diff --git a/.gitignore b/.gitignore index a40199d342c5986c89ce93910b37b8e41e9d7221..3667399cac58417a91fe9ff25bff5152a3aea32e 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /red.xml build/ dist/ +/libspecs/ diff --git a/LICENSE b/LICENSE index c7a6ba06afc8440ff3742ee50286ada519c15dec..b10b838c766e4e4198eb866e2b9d3eecc98423e0 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright 2019 ETSI +Copyright 2019-2020 ETSI Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/README.md b/README.md index e336da33e32632a7dad6bb4c6d8851ed70bb9a18..f844f21d7df7918f1175f21fffc67d8957385330 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,10 @@ # NFV API Conformance Test Specification (NFV-TST 010) This repository hosts the NFV API Conformance test specification for -the APIs defined in ETSI NFV GS [SOL002](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf), [SOL003](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/02.04.01_60/gs_NFV-SOL003v020401p.pdf), [SOL005](http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf), in their versions v2.4.1. +the APIs defined in ETSI NFV GS [SOL002](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.06.01_60/gs_NFV-SOL002v020601p.pdf), [SOL003](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/02.06.01_60/gs_NFV-SOL003v020601p.pdf), [SOL005](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.06.01_60/gs_NFV-SOL005v020601p.pdf), in their versions v2.6.1. + +More information and download is available at [DGS/NFV-TST010ed261](https://portal.etsi.org/webapp/WorkProgram/Report_WorkItem.asp?WKI_ID=58428). -More information and download is available at [DGS/NFV-TST010](https://portal.etsi.org/webapp/WorkProgram/Report_WorkItem.asp?WKI_ID=54031). ## Overview diff --git a/SOL002/README.md b/SOL002/README.md index 762121acb900050f04d590df7dd91218b0e6c863..365fbf0559bca5f80e215ec2bf615b3a84b0b017 100644 --- a/SOL002/README.md +++ b/SOL002/README.md @@ -2,7 +2,7 @@ This folder includes the NFV API conformance test descriptions for NFV SOL002 APIs. -The reference spec version is v2.4.1: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf +The reference spec version is v2.6.1: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.06.01_60/gs_NFV-SOL002v020601p.pdf ## License diff --git a/SOL002/VNFConfiguration-API/ApiVersion.robot b/SOL002/VNFConfiguration-API/ApiVersion.robot new file mode 100644 index 0000000000000000000000000000000000000000..68b95d747190c12e49349ba997af04cb79f5eba0 --- /dev/null +++ b/SOL002/VNFConfiguration-API/ApiVersion.robot @@ -0,0 +1,211 @@ +*** Settings *** +Resource environment/variables.txt +Library REST ${EM-VNF_SCHEMA}://${EM-VNF_HOST}:${EM-VNF_PORT} ssl_verify=false +Library DependencyLibrary +Library JSONLibrary +Library JSONSchemaLibrary schemas/ + +*** Test Cases *** +POST API Version - Method not implemented + [Documentation] Test ID: 6.3.1.2.1 + ... Test title: POST API version - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version + [Documentation] Test ID: 6.3.1.2.2 + ... Test title: GET API Version + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version - Method not implemented + [Documentation] Test ID: 6.3.1.2.3 + ... Test title: PUT API Version - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version - Method not implemented + [Documentation] Test ID: 6.3.1.2.4 + ... Test title: PATCH API Version - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version - Method not implemented + [Documentation] Test ID: 6.3.1.2.5 + ... Test title: DELETE API Version - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +POST API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.1.2.6 + ... Test title: POST API version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version with apiMajorVerion + [Documentation] Test ID: 6.3.1.2.7 + ... Test title: GET API Version with apiMajorVerion + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.1.2.8 + ... Test title: PUT API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.1.2.9 + ... Test title: PATCH API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.1.2.10 + ... Test title: DELETE API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +*** Keywords *** +POST API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +POST API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check HTTP Response Status Code Is + [Arguments] ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} + Log Status code validated + +Check HTTP Response Body Json Schema Is + [Arguments] ${input} + ${schema} = Catenate ${input} .schema.json + Validate Json ${schema} ${response['body']} + Log Json Schema Validation OK \ No newline at end of file diff --git a/SOL002/VNFConfiguration-API/Configuration.robot b/SOL002/VNFConfiguration-API/Configuration.robot index 56265e95d60a1124ea31105a53ccf79d2589384c..813e17ace0dc929957ea7a21eaf620fe6a7c80a7 100644 --- a/SOL002/VNFConfiguration-API/Configuration.robot +++ b/SOL002/VNFConfiguration-API/Configuration.robot @@ -12,7 +12,7 @@ Set new VNF Configuration ... Test title: Set a new VNF Configuration ... Test objective: The objective is to test the creation of a new VNF configuration and perform a JSON schema validation of the returned configuration data structure ... Pre-conditions: A VNF instance is instantiated - ... Reference: clause 9.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 9.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation of HTTP Etag opaque identifiers ... Post-Conditions: The configuration is successfully set in the VNF and it matches the issued configuration @@ -28,7 +28,7 @@ Get information about a VNF configuration ... Test title: Get information about a VNF configuration ... Test objective: The objective is to test the retrieval of an existing VNF instance configuration and perform a JSON schema validation of the collected configuration data structure ... Pre-conditions: A VNF instance is instantiated. The VNF instance is already configured. - ... Reference: clause 9.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 9.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -42,7 +42,7 @@ Get information about a VNF configuration with HTTP Etag ... Test title: Get information about a VNF configuration with HTTP Etag ... Test objective: The objective is to test the retrieval of an existing VNF instance configuration, check the generation by the VNF of an HTTP Etag opaque identifier, and perform a JSON schema validation of the collected configuration data structure ... Pre-conditions: A VNF instance is instantiated. The VNF instance is already configured - ... Reference: clause 9.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 9.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation of HTTP Etag opaque identifiers ... Post-Conditions: none @@ -57,7 +57,7 @@ Set new VNF Configuration - HTTP Etag precondition unsuccessful ... Test title: Set a new VNF Configuration - HTTP Etag precondition unsuccessful ... Test objective: The objective is to test the unsuccess in setting a duplication of VNF configuration identified by an already used HTTP Etag identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. The VNF instance is already configured (Test ID 6.3.1.1.1) with a given HTTP Etag identifier. - ... Reference: clause 9.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 9.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation of HTTP Etag opaque identifiers ... Post-Conditions: The VNF configuration is not modified by the unsuccessful operation and it matches the configuration issued in Test ID 6.3.1.1.1 @@ -71,7 +71,7 @@ POST VNF Configuration - Method not implemented ... Test title: POST VNF Configuration - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF configuration ... Pre-conditions: A VNF instance is instantiated. The VNF instance is alrseady configured - ... Reference: clause 9.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 9.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -83,7 +83,7 @@ PUT VNF Configuration - Method not implemented ... Test title: PUT VNF Configuration - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify an existing VNF configuration ... Pre-conditions: A VNF instance is instantiated. The VNF instance is already configured - ... Reference: clause 9.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 9.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -95,7 +95,7 @@ DELETE VNF Configuration - Method not implemented ... Test title: Delete VNF Configuration - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete an existing VNF configuration ... Pre-conditions: A VNF instance is instantiated. The VNF instance is already configured - ... Reference: clause 9.4.2.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 9.4.2.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: The VNF configuration is not deleted by the unsuccessful operation @@ -126,8 +126,7 @@ Send VNF configuration Check HTTP Response Status Code Is [Arguments] ${expected_status} - ${status}= Convert To Integer ${expected_status} - Should Be Equal As Strings ${response['status']} ${status} + Should Be Equal As Strings ${response['status']} ${expected_status} Log Status code validated Check HTTP Response Header Contains diff --git a/SOL002/VNFConfiguration-API/SOL002-VNFConfiguration-API.json b/SOL002/VNFConfiguration-API/SOL002-VNFConfiguration-API.json deleted file mode 100644 index c324fdd7bbe6e796a86e3f4be114cb47045fefb7..0000000000000000000000000000000000000000 --- a/SOL002/VNFConfiguration-API/SOL002-VNFConfiguration-API.json +++ /dev/null @@ -1,1398 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "1.1.1", - "title": "SOL002 - VNF Configuration interface", - "description": "VNF Configuration interface of ETSI NFV SOL002\n\nIMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to. In case of discrepancies the published ETSI Group Specification takes precedence.\n\nPlease report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=---\n", - "license": { - "name": "ETSI Forge copyright notice", - "url": "https://forge.etsi.org/etsi-forge-copyright-notice.txt" - } - }, - "externalDocs": { - "description": "ETSI GS NFV-SOL 002 V2.4.1", - "url": "http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf" - }, - "basePath": "/vnfconfig/v1", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/configuration": { - "get": { - "summary": "Read VNF/VNFC configuration from VNF.", - "description": "The client can use this method to read configuration information about a VNF instance and/or its VNFC instances.\n", - "responses": { - "200": { - "description": "OK\nConfiguration information about a VNF instance was read successfully. The response body shall contain a representation of the configuration resource.\n", - "schema": { - "$ref": "#/definitions/VnfConfiguration" - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "416": { - "description": "Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "422": { - "description": "Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "patch": { - "summary": "Modify VNF/VNFC configuration.", - "description": "This method sets or modifies a configuration resource.", - "parameters": [ - { - "name": "configModifications", - "description": "The parameter for the configuration modification.", - "required": true, - "in": "body", - "schema": { - "$ref": "#/definitions/VnfConfigModifications" - } - } - ], - "responses": { - "200": { - "description": "OK\nThe request was accepted and completed. The response body shall contain the parameters of the configuration modification that was applied to the configuration resource.\n", - "schema": { - "$ref": "#/definitions/VnfConfigModifications" - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "412": { - "description": "Precondition Failed\nA 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "416": { - "description": "Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "422": { - "description": "Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - } - }, - "definitions": { - "VnfConfiguration": { - "description": "This type represents configuration parameters of a VNF instance and its VNFC instances.\n", - "type": "object", - "required": [ - "vnfConfigurationData" - ], - "properties": { - "vnfConfigurationData": { - "description": "This type represents configuration parameters of a VNF instance.\n", - "type": "object", - "properties": { - "extCpConfig": { - "description": "This type represents configuration parameters of a CP instance.\n", - "type": "object", - "required": [ - "cpId", - "cpdId", - "addresses" - ], - "properties": { - "cpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "Network address and port assigned to the CP.\n", - "type": "array", - "items": { - "description": "This type represents configuration parameters of a CP instance address. * NOTE 1: Either \"address\" or \"useDynamicAddress\" shall be present.\n * NOTE 2: At least one of \"macAddress\" and \"ipAddress\" shall be present.\n", - "type": "object", - "properties": { - "address": { - "description": "Network address that has been configured on the CP. See NOTE 1.\n", - "type": "object", - "properties": { - "macAddress": { - "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", - "type": "string", - "format": "MAC" - }, - "ipAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - } - }, - "useDynamicAddress": { - "description": "Set to true if an address shall be assigned dynamically. Otherwise set to false. The default value shall be false. See NOTE 1.\n", - "type": "boolean" - }, - "port": { - "description": "The port assigned to the CP instance (e.g. IP port number, Ethernet port number, etc.).\n", - "type": "integer" - } - } - } - } - } - }, - "dhcpServer": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - }, - "vnfSpecificData": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - }, - "vnfcConfigurationData": { - "description": "Configuration parameters of the VNFC instances.\n", - "type": "array", - "items": { - "description": "This type represents configuration parameters of a VNFC instance.\n", - "type": "object", - "required": [ - "vnfcInstanceId" - ], - "properties": { - "vnfcInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "intCpConfig": { - "description": "Configuration parameters for the internal CPs of the VNFC instance.\n", - "type": "array", - "items": { - "description": "This type represents configuration parameters of a CP instance.\n", - "type": "object", - "required": [ - "cpId", - "cpdId", - "addresses" - ], - "properties": { - "cpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "Network address and port assigned to the CP.\n", - "type": "array", - "items": { - "description": "This type represents configuration parameters of a CP instance address. * NOTE 1: Either \"address\" or \"useDynamicAddress\" shall be present.\n * NOTE 2: At least one of \"macAddress\" and \"ipAddress\" shall be present.\n", - "type": "object", - "properties": { - "address": { - "description": "Network address that has been configured on the CP. See NOTE 1.\n", - "type": "object", - "properties": { - "macAddress": { - "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", - "type": "string", - "format": "MAC" - }, - "ipAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - } - }, - "useDynamicAddress": { - "description": "Set to true if an address shall be assigned dynamically. Otherwise set to false. The default value shall be false. See NOTE 1.\n", - "type": "boolean" - }, - "port": { - "description": "The port assigned to the CP instance (e.g. IP port number, Ethernet port number, etc.).\n", - "type": "integer" - } - } - } - } - } - } - }, - "dhcpServer": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - }, - "vnfcSpecificData": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - } - }, - "VnfConfigModifications": { - "description": "This type represents request parameters for the \"Set Configuration\" operation. * NOTE 1: At least one of \"vnfConfigurationData\" and \"vnfcConfigurationData\"\n shall be present.\n * NOTE 2: The VnfcConfiguration data type can only be used to modify the configuration\n of existing VNFC instances.\n", - "type": "object", - "properties": { - "vnfConfigurationData": { - "description": "This type represents configuration parameters of a VNF instance.\n", - "type": "object", - "properties": { - "extCpConfig": { - "description": "This type represents configuration parameters of a CP instance.\n", - "type": "object", - "required": [ - "cpId", - "cpdId", - "addresses" - ], - "properties": { - "cpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "Network address and port assigned to the CP.\n", - "type": "array", - "items": { - "description": "This type represents configuration parameters of a CP instance address. * NOTE 1: Either \"address\" or \"useDynamicAddress\" shall be present.\n * NOTE 2: At least one of \"macAddress\" and \"ipAddress\" shall be present.\n", - "type": "object", - "properties": { - "address": { - "description": "Network address that has been configured on the CP. See NOTE 1.\n", - "type": "object", - "properties": { - "macAddress": { - "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", - "type": "string", - "format": "MAC" - }, - "ipAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - } - }, - "useDynamicAddress": { - "description": "Set to true if an address shall be assigned dynamically. Otherwise set to false. The default value shall be false. See NOTE 1.\n", - "type": "boolean" - }, - "port": { - "description": "The port assigned to the CP instance (e.g. IP port number, Ethernet port number, etc.).\n", - "type": "integer" - } - } - } - } - } - }, - "dhcpServer": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - }, - "vnfSpecificData": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - }, - "vnfcConfigurationData": { - "description": "Modifications to configuration data for certain VNFC instances. See NOTE 1 and NOTE 2. If present, the modifications of the \"vnfcConfigurationData\" attribute shall follow these provisions: Modifying an attribute that is an array of objects of type \"VnfcConfigurationData\".\n Assumptions:\n 1) \"oldList\" is the \"VnfcConfigurationData\" array to be modified and \"newList\"\n is the \"VnfcConfigurationData\" array that contains the changes.\n 2) \"oldEntry\" is an entry in \"oldList\" and \"newEntry\" is an entry in \"newList\".\n 3) A \"newEntry\" has a \"corresponding entry\" if there exists an \"oldEntry\" that \n has the same content of the \"vnfcInstanceId\" attribute as the \"newEntry\"; \n a \"newEntry\" has no corresponding entry if no such \"oldEntry\" exists.\n 4) In any array of \"VnfcConfigurationData\" structures, the content of \"vnfcInstanceId\"\n is unique (i.e. there shall be no two entries with the same content of \"vnfcInstanceId\").\n Provisions:\n 1) For each \"newEntry\" in \"newList\" that has no corresponding entry in \"oldList\", \n the \"oldList\" array shall be modified by adding that \"newEntry\".\n\n 2) For each \"newEntry\" in \"newList\" that has a corresponding \"oldEntry\" in \"oldList\",\n the value of \"oldEntry\" shall be updated with the value of \"newEntry\" according to\n the rules of JSON Merge PATCH (see IETF RFC 7396 ).\n", - "type": "array", - "items": { - "description": "This type represents configuration parameters of a VNFC instance.\n", - "type": "object", - "required": [ - "vnfcInstanceId" - ], - "properties": { - "vnfcInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "intCpConfig": { - "description": "Configuration parameters for the internal CPs of the VNFC instance.\n", - "type": "array", - "items": { - "description": "This type represents configuration parameters of a CP instance.\n", - "type": "object", - "required": [ - "cpId", - "cpdId", - "addresses" - ], - "properties": { - "cpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "Network address and port assigned to the CP.\n", - "type": "array", - "items": { - "description": "This type represents configuration parameters of a CP instance address. * NOTE 1: Either \"address\" or \"useDynamicAddress\" shall be present.\n * NOTE 2: At least one of \"macAddress\" and \"ipAddress\" shall be present.\n", - "type": "object", - "properties": { - "address": { - "description": "Network address that has been configured on the CP. See NOTE 1.\n", - "type": "object", - "properties": { - "macAddress": { - "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", - "type": "string", - "format": "MAC" - }, - "ipAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - } - }, - "useDynamicAddress": { - "description": "Set to true if an address shall be assigned dynamically. Otherwise set to false. The default value shall be false. See NOTE 1.\n", - "type": "boolean" - }, - "port": { - "description": "The port assigned to the CP instance (e.g. IP port number, Ethernet port number, etc.).\n", - "type": "integer" - } - } - } - } - } - } - }, - "dhcpServer": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - }, - "vnfcSpecificData": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/SOL002/VNFConfiguration-API/SOL002-VNFConfiguration-API.yaml b/SOL002/VNFConfiguration-API/SOL002-VNFConfiguration-API.yaml deleted file mode 100644 index a1007e27277ce295fc40146e65687758659d31b2..0000000000000000000000000000000000000000 --- a/SOL002/VNFConfiguration-API/SOL002-VNFConfiguration-API.yaml +++ /dev/null @@ -1,2202 +0,0 @@ -swagger: '2.0' -info: - version: 1.1.1 - title: SOL002 - VNF Configuration interface - description: > - VNF Configuration interface of ETSI NFV SOL002 - - - IMPORTANT: Please note that this file might be not aligned to the current - version of the ETSI Group Specification it refers to. In case of - discrepancies the published ETSI Group Specification takes precedence. - - - Please report bugs to - https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=--- - license: - name: ETSI Forge copyright notice - url: 'https://forge.etsi.org/etsi-forge-copyright-notice.txt' -externalDocs: - description: ETSI GS NFV-SOL 002 V2.4.1 - url: >- - http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf -basePath: /vnfconfig/v1 -schemes: - - http - - https -consumes: - - application/json -produces: - - application/json -paths: - /configuration: - get: - summary: Read VNF/VNFC configuration from VNF. - description: > - The client can use this method to read configuration information about a - VNF instance and/or its VNFC instances. - responses: - '200': - description: > - OK - - Configuration information about a VNF instance was read - successfully. The response body shall contain a representation of - the configuration resource. - schema: - $ref: '#/definitions/VnfConfiguration' - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - Another request is in progress that prohibits the fulfilment of the - current request, or the current resource state is inconsistent with - the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '416': - description: > - Requested Range Not Satisfiable - - This code is returned if the requested byte range in the Range HTTP - header is not present in the requested resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '422': - description: > - 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. NOTE 2: - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - patch: - summary: Modify VNF/VNFC configuration. - description: This method sets or modifies a configuration resource. - parameters: - - name: configModifications - description: The parameter for the configuration modification. - required: true - in: body - schema: - $ref: '#/definitions/VnfConfigModifications' - responses: - '200': - description: > - OK - - The request was accepted and completed. The response body shall - contain the parameters of the configuration modification that was - applied to the configuration resource. - schema: - $ref: '#/definitions/VnfConfigModifications' - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - Another request is in progress that prohibits the fulfilment of the - current request, or the current resource state is inconsistent with - the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '412': - description: > - Precondition Failed - - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '416': - description: > - Requested Range Not Satisfiable - - This code is returned if the requested byte range in the Range HTTP - header is not present in the requested resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '422': - description: > - 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. NOTE 2: - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI -definitions: - VnfConfiguration: - description: > - This type represents configuration parameters of a VNF instance and its - VNFC instances. - type: object - required: - - vnfConfigurationData - properties: - vnfConfigurationData: - description: | - This type represents configuration parameters of a VNF instance. - type: object - properties: - extCpConfig: - description: | - This type represents configuration parameters of a CP instance. - type: object - required: - - cpId - - cpdId - - addresses - properties: - cpId: - description: > - An identifier that is unique for the respective type within a - VNF instance, but may not be globally unique. - type: string - cpdId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - addresses: - description: | - Network address and port assigned to the CP. - type: array - items: - description: > - This type represents configuration parameters of a CP - instance address. - * NOTE 1: Either "address" or "useDynamicAddress" shall be present. - * NOTE 2: At least one of "macAddress" and "ipAddress" shall be present. - type: object - properties: - address: - description: > - Network address that has been configured on the CP. See - NOTE 1. - type: object - properties: - macAddress: - description: > - A MAC address. Representation: string that consists - of groups of two hexadecimal digits, separated by - hyphens or colons. - type: string - format: MAC - ipAddress: - description: > - An IPV4 or IPV6 address. Representation: In case of - an IPV4 address, string that consists of four - decimal integers separated by dots, each integer - ranging from 0 to 255. In case of an IPV6 address, - string that consists of groups of zero to four - hexadecimal digits, separated by colons. - type: string - format: IP - useDynamicAddress: - description: > - Set to true if an address shall be assigned dynamically. - Otherwise set to false. The default value shall be - false. See NOTE 1. - type: boolean - port: - description: > - The port assigned to the CP instance (e.g. IP port - number, Ethernet port number, etc.). - type: integer - dhcpServer: - description: > - An IPV4 or IPV6 address. Representation: In case of an IPV4 - address, string that consists of four decimal integers separated - by dots, each integer ranging from 0 to 255. In case of an IPV6 - address, string that consists of groups of zero to four - hexadecimal digits, separated by colons. - type: string - format: IP - vnfSpecificData: - description: > - This type represents a list of key-value pairs. The order of the - pairs in the list is not significant. In JSON, a set of key- value - pairs is represented as an object. It shall comply with the - provisions defined in clause 4 of IETF RFC 7159. - type: object - vnfcConfigurationData: - description: | - Configuration parameters of the VNFC instances. - type: array - items: - description: | - This type represents configuration parameters of a VNFC instance. - type: object - required: - - vnfcInstanceId - properties: - vnfcInstanceId: - description: > - An identifier that is unique for the respective type within a - VNF instance, but may not be globally unique. - type: string - intCpConfig: - description: > - Configuration parameters for the internal CPs of the VNFC - instance. - type: array - items: - description: > - This type represents configuration parameters of a CP - instance. - type: object - required: - - cpId - - cpdId - - addresses - properties: - cpId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally unique. - type: string - cpdId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - addresses: - description: | - Network address and port assigned to the CP. - type: array - items: - description: > - This type represents configuration parameters of a CP - instance address. - * NOTE 1: Either "address" or "useDynamicAddress" shall be present. - * NOTE 2: At least one of "macAddress" and "ipAddress" shall be present. - type: object - properties: - address: - description: > - Network address that has been configured on the CP. - See NOTE 1. - type: object - properties: - macAddress: - description: > - A MAC address. Representation: string that - consists of groups of two hexadecimal digits, - separated by hyphens or colons. - type: string - format: MAC - ipAddress: - description: > - An IPV4 or IPV6 address. Representation: In case - of an IPV4 address, string that consists of four - decimal integers separated by dots, each integer - ranging from 0 to 255. In case of an IPV6 - address, string that consists of groups of zero - to four hexadecimal digits, separated by colons. - type: string - format: IP - useDynamicAddress: - description: > - Set to true if an address shall be assigned - dynamically. Otherwise set to false. The default - value shall be false. See NOTE 1. - type: boolean - port: - description: > - The port assigned to the CP instance (e.g. IP port - number, Ethernet port number, etc.). - type: integer - dhcpServer: - description: > - An IPV4 or IPV6 address. Representation: In case of an IPV4 - address, string that consists of four decimal integers separated - by dots, each integer ranging from 0 to 255. In case of an IPV6 - address, string that consists of groups of zero to four - hexadecimal digits, separated by colons. - type: string - format: IP - vnfcSpecificData: - description: > - This type represents a list of key-value pairs. The order of the - pairs in the list is not significant. In JSON, a set of key- - value pairs is represented as an object. It shall comply with - the provisions defined in clause 4 of IETF RFC 7159. - type: object - VnfConfigModifications: - description: > - This type represents request parameters for the "Set Configuration" - operation. - * NOTE 1: At least one of "vnfConfigurationData" and "vnfcConfigurationData" - shall be present. - * NOTE 2: The VnfcConfiguration data type can only be used to modify the configuration - of existing VNFC instances. - type: object - properties: - vnfConfigurationData: - description: | - This type represents configuration parameters of a VNF instance. - type: object - properties: - extCpConfig: - description: | - This type represents configuration parameters of a CP instance. - type: object - required: - - cpId - - cpdId - - addresses - properties: - cpId: - description: > - An identifier that is unique for the respective type within a - VNF instance, but may not be globally unique. - type: string - cpdId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - addresses: - description: | - Network address and port assigned to the CP. - type: array - items: - description: > - This type represents configuration parameters of a CP - instance address. - * NOTE 1: Either "address" or "useDynamicAddress" shall be present. - * NOTE 2: At least one of "macAddress" and "ipAddress" shall be present. - type: object - properties: - address: - description: > - Network address that has been configured on the CP. See - NOTE 1. - type: object - properties: - macAddress: - description: > - A MAC address. Representation: string that consists - of groups of two hexadecimal digits, separated by - hyphens or colons. - type: string - format: MAC - ipAddress: - description: > - An IPV4 or IPV6 address. Representation: In case of - an IPV4 address, string that consists of four - decimal integers separated by dots, each integer - ranging from 0 to 255. In case of an IPV6 address, - string that consists of groups of zero to four - hexadecimal digits, separated by colons. - type: string - format: IP - useDynamicAddress: - description: > - Set to true if an address shall be assigned dynamically. - Otherwise set to false. The default value shall be - false. See NOTE 1. - type: boolean - port: - description: > - The port assigned to the CP instance (e.g. IP port - number, Ethernet port number, etc.). - type: integer - dhcpServer: - description: > - An IPV4 or IPV6 address. Representation: In case of an IPV4 - address, string that consists of four decimal integers separated - by dots, each integer ranging from 0 to 255. In case of an IPV6 - address, string that consists of groups of zero to four - hexadecimal digits, separated by colons. - type: string - format: IP - vnfSpecificData: - description: > - This type represents a list of key-value pairs. The order of the - pairs in the list is not significant. In JSON, a set of key- value - pairs is represented as an object. It shall comply with the - provisions defined in clause 4 of IETF RFC 7159. - type: object - vnfcConfigurationData: - description: > - Modifications to configuration data for certain VNFC instances. See - NOTE 1 and NOTE 2. If present, the modifications of the - "vnfcConfigurationData" attribute shall follow these provisions: - Modifying an attribute that is an array of objects of type "VnfcConfigurationData". - Assumptions: - 1) "oldList" is the "VnfcConfigurationData" array to be modified and "newList" - is the "VnfcConfigurationData" array that contains the changes. - 2) "oldEntry" is an entry in "oldList" and "newEntry" is an entry in "newList". - 3) A "newEntry" has a "corresponding entry" if there exists an "oldEntry" that - has the same content of the "vnfcInstanceId" attribute as the "newEntry"; - a "newEntry" has no corresponding entry if no such "oldEntry" exists. - 4) In any array of "VnfcConfigurationData" structures, the content of "vnfcInstanceId" - is unique (i.e. there shall be no two entries with the same content of "vnfcInstanceId"). - Provisions: - 1) For each "newEntry" in "newList" that has no corresponding entry in "oldList", - the "oldList" array shall be modified by adding that "newEntry". - - 2) For each "newEntry" in "newList" that has a corresponding "oldEntry" in "oldList", - the value of "oldEntry" shall be updated with the value of "newEntry" according to - the rules of JSON Merge PATCH (see IETF RFC 7396 ). - type: array - items: - description: | - This type represents configuration parameters of a VNFC instance. - type: object - required: - - vnfcInstanceId - properties: - vnfcInstanceId: - description: > - An identifier that is unique for the respective type within a - VNF instance, but may not be globally unique. - type: string - intCpConfig: - description: > - Configuration parameters for the internal CPs of the VNFC - instance. - type: array - items: - description: > - This type represents configuration parameters of a CP - instance. - type: object - required: - - cpId - - cpdId - - addresses - properties: - cpId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally unique. - type: string - cpdId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - addresses: - description: | - Network address and port assigned to the CP. - type: array - items: - description: > - This type represents configuration parameters of a CP - instance address. - * NOTE 1: Either "address" or "useDynamicAddress" shall be present. - * NOTE 2: At least one of "macAddress" and "ipAddress" shall be present. - type: object - properties: - address: - description: > - Network address that has been configured on the CP. - See NOTE 1. - type: object - properties: - macAddress: - description: > - A MAC address. Representation: string that - consists of groups of two hexadecimal digits, - separated by hyphens or colons. - type: string - format: MAC - ipAddress: - description: > - An IPV4 or IPV6 address. Representation: In case - of an IPV4 address, string that consists of four - decimal integers separated by dots, each integer - ranging from 0 to 255. In case of an IPV6 - address, string that consists of groups of zero - to four hexadecimal digits, separated by colons. - type: string - format: IP - useDynamicAddress: - description: > - Set to true if an address shall be assigned - dynamically. Otherwise set to false. The default - value shall be false. See NOTE 1. - type: boolean - port: - description: > - The port assigned to the CP instance (e.g. IP port - number, Ethernet port number, etc.). - type: integer - dhcpServer: - description: > - An IPV4 or IPV6 address. Representation: In case of an IPV4 - address, string that consists of four decimal integers separated - by dots, each integer ranging from 0 to 255. In case of an IPV6 - address, string that consists of groups of zero to four - hexadecimal digits, separated by colons. - type: string - format: IP - vnfcSpecificData: - description: > - This type represents a list of key-value pairs. The order of the - pairs in the list is not significant. In JSON, a set of key- - value pairs is represented as an object. It shall comply with - the provisions defined in clause 4 of IETF RFC 7159. - type: object - diff --git a/SOL002/VNFConfiguration-API/jsons/vnfConfigModifications.json b/SOL002/VNFConfiguration-API/jsons/vnfConfigModifications.json index 2863575b533aee7a2328e8a037bc7b0c572001d9..5a14e63b86bdbc474fa969b54373f23285ed7e16 100644 --- a/SOL002/VNFConfiguration-API/jsons/vnfConfigModifications.json +++ b/SOL002/VNFConfiguration-API/jsons/vnfConfigModifications.json @@ -39,5 +39,6 @@ "dhcpServer": "string", "vnfcSpecificData": {} } - ] + ], + "vnfcConfigurationDataDeleteIds": [] } \ No newline at end of file diff --git a/SOL002/VNFConfiguration-API/schemas/ApiVersionInformation.schema.json b/SOL002/VNFConfiguration-API/schemas/ApiVersionInformation.schema.json new file mode 100644 index 0000000000000000000000000000000000000000..a79641197fe678896eb17d04beaac08068ea3285 --- /dev/null +++ b/SOL002/VNFConfiguration-API/schemas/ApiVersionInformation.schema.json @@ -0,0 +1,39 @@ +{ + "description": "This type represents API version information.\n", + "type": "object", + "required": [ + "uriPrefix", + "apiVersions" + ], + "properties": { + "uriPrefix": { + "description": "Specifies the URI prefix for the API, in the following form {apiRoot}/{apiName}/{apiMajorVersion}/.\n", + "type": "string" + }, + "apiVersions": { + "description": "Version(s) supported for the API signaled by the uriPrefix attribute.\n", + "type": "array", + "items": { + "type": "object", + "required": [ + "version" + ], + "properties": { + "version": { + "description": "Identifies a supported version. The value of the version attribute shall be a version identifier as specified in clause 9.1 (SOL013).\n", + "type": "string" + }, + "isDeprecated": { + "description": "If such information is available, this attribute indicates whether use of the version signaled by the version attribute is deprecated (true) or not (false).\nA deprecated version is still supported by the API producer but is recommended not to be used any longer. When a version is no longer supported, it does not appear in the response body.\n", + "type": "boolean" + }, + "retirementDate": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + } + } + } + } + } +} \ No newline at end of file diff --git a/SOL002/VNFFaultManagement-API/Alarms.robot b/SOL002/VNFFaultManagement-API/Alarms.robot index d032b05fb69d2f3321f98911133a243f17176842..c7ef62b0fd07b36ea5bc9195c42540e79cb51fca 100644 --- a/SOL002/VNFFaultManagement-API/Alarms.robot +++ b/SOL002/VNFFaultManagement-API/Alarms.robot @@ -1,10 +1,11 @@ *** Settings *** # Suite setup Expect spec SOL003-VNFLifecycleManagement-API.yaml Resource environment/variables.txt -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library JSONLibrary Library JSONSchemaLibrary schemas/ Library OperatingSystem +Library Collections *** Test Cases *** POST Alarms - Method not implemented @@ -12,7 +13,7 @@ POST Alarms - Method not implemented ... Test title: POST Alarms - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: none @@ -24,7 +25,7 @@ GET information about multiple alarms ... Test title: GET information about multiple alarms ... Test objective: The objective is to retrieve information about the alarm list ... Pre-conditions: - ... Reference: clause 7.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -37,7 +38,7 @@ GET information about multiple alarms with attribute-based filter ... Test title: GET information about multiple alarms with attribute-based filter ... Test objective: The objective is to retrieve information about the alarm list ... Pre-conditions: - ... Reference: clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -50,7 +51,7 @@ GET information about multiple alarms with invalid attribute-based filter ... Test title: GET information about multiple alarms with invalid attribute-based filter ... Test objective: The objective is to retrieve information about the alarm list ... Pre-conditions: - ... Reference: clause 7.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -63,7 +64,7 @@ GET information about multiple alarms with "all_fields" attribute selector ... Test title: GET information about multiple alarms with "all_fields" attribute selector ... Test objective: The objective is to retrieve information about the alarm list ... Pre-conditions: - ... Reference: clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -76,7 +77,7 @@ GET information about multiple alarms with exclude_default attribute selector ... Test title: GET information about multiple alarms with "exclude_default" attribute selector ... Test objective: The objective is to retrieve information about the alarm list ... Pre-conditions: - ... Reference: clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -90,7 +91,7 @@ GET information about multiple alarms with fields attribute selector ... Test title: GET information about multiple alarms with fields attribute selector ... Test objective: The objective is to retrieve information about the alarm list ... Pre-conditions: - ... Reference: clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -103,7 +104,7 @@ GET information about multiple alarms with "exclude_fields" attribute selector ... Test title: GET information about multiple alarms with "exclude_fields" attribute selector ... Test objective: The objective is to retrieve information about the alarm list ... Pre-conditions: - ... Reference: clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: none @@ -116,7 +117,7 @@ PUT Alarms - Method not implemented ... Test title: PUT Alarms - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: none @@ -128,7 +129,7 @@ PATCH Alarms - Method not implemented ... Test title: PATCH Alarms - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.2.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: none @@ -140,12 +141,122 @@ DELETE Alarms - Method not implemented ... Test title: DELETE Alarms - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.2.3.6 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.2.3.6 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: the alarm is not deleted DELETE Alarms Task Check HTTP Response Status Code Is 405 + +GET information about multiple alarms to get Paged Response + [Documentation] Test ID: 6.3.4.1.12 + ... Test title: GET information about multiple alarms to get Paged Response + ... Test objective: The objective is to retrieve information about the alarms to get paged response + ... Pre-conditions: + ... Reference: Clause 7.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Alarms Task + Check HTTP Response Status Code Is 200 + Check LINK in Header + +GET information about multiple alarms for Bad Request Response too big + [Documentation] Test ID: 6.3.4.1.13 + ... Test title: GET information about multiple alarms for Bad Request Response too big + ... Test objective: The objective is to test that GET method fail retrieving status information about Alarms when Response is too big, and perform the JSON schema validation of the failed operation HTTP response + ... Pre-conditions: + ... Reference: Clause 7.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Alarms Task with invalid filter + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails + +GET information about alarms with attribute-based filter "id" + [Documentation] Test ID: 6.3.4.1.14 + ... Test title: GET information about alarms with attribute-based filter "id" + ... Test objective: The objective is to retrieve information about the alarm list with alarm filter "id" + ... Pre-conditions: + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Alarms Task with filter "id" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is alarm + Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "id" + +GET information about multiple alarms with attribute-based filter "vnfcInstanceIds" + [Documentation] Test ID: 6.3.4.1.15 + ... Test title: GET information about multiple alarms with attribute-based filter "vnfcInstanceIds" + ... Test objective: The objective is to retrieve information about the alarm list with attribute filter "vnfcInstanceIds" + ... Pre-conditions: + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Alarms Task with filter "vnfcInstanceIds" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is alarms + Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "vnfcInstanceIds" + +GET information about multiple alarms with attribute-based filter "rootCauseFaultyResource.faultyResourceType" + [Documentation] Test ID: 6.3.4.1.16 + ... Test title: GET information about multiple alarms with attribute-based filter "rootCauseFaultyResource.faultyResourceType" + ... Test objective: The objective is to retrieve information about the alarm list with attribute filter "rootCauseFaultyResource.faultyResourceType" + ... Pre-conditions: + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Alarms Task with filter "rootCauseFaultyResource_faultyResourceType" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is alarms + Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "rootCauseFaultyResource_faultyResourceType" + +GET information about multiple alarms with attribute-based filter "eventType" + [Documentation] Test ID: 6.3.4.1.17 + ... Test title: GET information about multiple alarms with attribute-based filter "eventType" + ... Test objective: The objective is to retrieve information about the alarm list with attribute filter "eventType" + ... Pre-conditions: + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Alarms Task with filter "eventType" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is alarms + Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "eventType" + +GET information about multiple alarms with attribute-based filter "perceivedSeverity" + [Documentation] Test ID: 6.3.4.1.18 + ... Test title: GET information about multiple alarms with attribute-based filter "perceivedSeverity" + ... Test objective: The objective is to retrieve information about the alarm list with attribute filter "perceivedSeverity" + ... Pre-conditions: + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Alarms Task with filter "perceivedSeverity" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is alarms + Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "perceivedSeverity" + +GET information about multiple alarms with attribute-based filter "probableCause" + [Documentation] Test ID: 6.3.4.1.19 + ... Test title: GET information about multiple alarms with attribute-based filter "probableCause" + ... Test objective: The objective is to retrieve information about the alarm list with attribute filter "probableCause" + ... Pre-conditions: + ... Reference: Clause 7.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + GET Alarms Task with filter "probableCause" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is alarms + Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "probableCause" *** Keywords *** POST Alarms Task @@ -154,28 +265,28 @@ POST Alarms Task Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Post ${apiRoot}/${apiName}/${apiVersion}/alarms ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Alarms Task log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/alarms ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Alarms Task log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/alarms ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Alarms Task log Trying to perform a DELETE. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/alarms ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Alarms Task Log Query VNF The GET method queries information about multiple alarms. Set Headers {"Accept":"${ACCEPT}"} @@ -183,7 +294,7 @@ GET Alarms Task Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/alarms ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Alarms Task with filter Log Query VNF The GET method queries information about multiple alarms with filters. Set Headers {"Accept":"${ACCEPT}"} @@ -191,7 +302,7 @@ GET Alarms Task with filter Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/alarms?${alarm_filter}=${managedObjectId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Alarms Task with invalid filter Log Query VNF The GET method queries information about multiple alarms with filters. Set Headers {"Accept":"${ACCEPT}"} @@ -199,7 +310,7 @@ GET Alarms Task with invalid filter Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/alarms?${invalid_alarm_filter}=${managedObjectId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Alarms Task with all_fields attribute selector Log Query VNF The GET method queries information about multiple alarms, using fields Set Headers {"Accept": "${ACCEPT_JSON}"} @@ -231,7 +342,7 @@ GET Alarms Task with exclude_fields attribute selector Check HTTP Response Status Code Is [Arguments] ${expected_status} - Should Be Equal ${response.status_code} ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} Log Status code validated Check HTTP Response Header Contains @@ -246,3 +357,89 @@ Check HTTP Response Body Json Schema Is ${schema} = Catenate SEPARATOR= ${input} .schema.json Validate Json ${schema} ${response['body']} Log Json Schema Validation OK + +Check LINK in Header + ${linkURL}= Get Value From Json ${response['headers']} $..Link + Should Not Be Empty ${linkURL} + +GET Alarms Task with filter "id" + Log Query VNF The GET method queries information about multiple alarms with filters "id". + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/alarms?id=${alarmId} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "id" + Should Be Equal As Strings ${response['body']['id']} ${alarmId} + +GET Alarms Task with filter "vnfcInstanceIds" + Log Query VNF The GET method queries information about multiple alarms with filters "vnfcInstanceIds". + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/alarms?vnfcInstanceIds=${vnfcInstanceIds} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "vnfcInstanceIds" + :FOR ${item} IN @{response['body']} + Lists Should Be Equal ${item['vnfcInstanceIds']} ${vnfcInstanceIds} + END + +GET Alarms Task with filter "rootCauseFaultyResource_faultyResourceType" + Log Query VNF The GET method queries information about multiple alarms with filters "rootCauseFaultyResource.faultyResourceType". + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/alarms?rootCauseFaultyResource.faultyResourceType=${faultyResourceType} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "rootCauseFaultyResource_faultyResourceType" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['rootCauseFaultyResource']['faultyResourceType']} ${faultyResourceType} + END + +GET Alarms Task with filter "eventType" + Log Query VNF The GET method queries information about multiple alarms with filters "eventType". + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/alarms?eventType=${eventType} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "eventType" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['eventType']} ${eventType} + END + +GET Alarms Task with filter "perceivedSeverity" + Log Query VNF The GET method queries information about multiple alarms with filters "perceivedSeverity". + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/alarms?perceivedSeverity=${perceivedSeverity} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "perceivedSeverity" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['perceivedSeverity']} ${perceivedSeverity} + END + +GET Alarms Task with filter "probableCause" + Log Query VNF The GET method queries information about multiple alarms with filters "probableCause". + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Log Execute Query and validate response + Get ${apiRoot}/${apiName}/${apiVersion}/alarms?probableCause=${probableCause} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body alarms Matches the requested attribute-based filter "probableCause" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['probableCause']} ${probableCause} + END \ No newline at end of file diff --git a/SOL002/VNFFaultManagement-API/ApiVersion.robot b/SOL002/VNFFaultManagement-API/ApiVersion.robot new file mode 100644 index 0000000000000000000000000000000000000000..f8e2fea9dce4a74feeaf83f98d6370a13e9d23be --- /dev/null +++ b/SOL002/VNFFaultManagement-API/ApiVersion.robot @@ -0,0 +1,213 @@ +*** Settings *** + +Resource environment/variables.txt + +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library DependencyLibrary +Library JSONLibrary +Library JSONSchemaLibrary schemas/ + +*** Test Cases *** +POST API Version - Method not implemented + [Documentation] Test ID: 6.3.4.7.1 + ... Test title: POST API version - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version + [Documentation] Test ID: 6.3.4.7.2 + ... Test title: GET API Version + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version - Method not implemented + [Documentation] Test ID: 6.3.4.7.3 + ... Test title: PUT API Version - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version - Method not implemented + [Documentation] Test ID: 6.3.4.7.4 + ... Test title: PATCH API Version - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version - Method not implemented + [Documentation] Test ID: 6.3.4.7.5 + ... Test title: DELETE API Version - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +POST API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.4.7.6 + ... Test title: POST API version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version with apiMajorVerion + [Documentation] Test ID: 6.3.4.7.7 + ... Test title: GET API Version with apiMajorVerion + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.4.7.8 + ... Test title: PUT API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.4.7.9 + ... Test title: PATCH API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.4.7.10 + ... Test title: DELETE API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +*** Keywords *** +POST API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +POST API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check HTTP Response Status Code Is + [Arguments] ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} + Log Status code validated + +Check HTTP Response Body Json Schema Is + [Arguments] ${input} + ${schema} = Catenate ${input} .schema.json + Validate Json ${schema} ${response['body']} + Log Json Schema Validation OK \ No newline at end of file diff --git a/SOL002/VNFFaultManagement-API/EscalatePerceivedSeverityTask.robot b/SOL002/VNFFaultManagement-API/EscalatePerceivedSeverityTask.robot index 6ec24fe08ccbb847ac0e494364b6aaf129386a79..89822d2b591bcc9ef4f551a219ce5a027a354d34 100644 --- a/SOL002/VNFFaultManagement-API/EscalatePerceivedSeverityTask.robot +++ b/SOL002/VNFFaultManagement-API/EscalatePerceivedSeverityTask.robot @@ -1,6 +1,6 @@ *** Settings *** Resource environment/variables.txt -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library JSONSchemaLibrary Suite Setup Check resource existence @@ -10,7 +10,7 @@ Escalate the perceived severity ... Test title: Escalate the perceived severity ... Test objective: To enable the consumer to escalate the perceived severity of an alarm that is represented by an individual alarm resource. ... Pre-conditions: The resource representing the individual alarm has been created - ... Reference: clause 7.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -20,9 +20,9 @@ Escalate the perceived severity GET Escalate the perceived severity - Method not implemented [Documentation] Test ID: 6.3.4.3.2 ... Test title: GET Escalate the perceived severity - Method not implemented - ... Test objective: to test that the method is not implemented + ... Test objective: The objective is to test that the GET HTTP method not implemented for escalate perceived severity ... Pre-conditions: - ... Reference: clause 7.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -32,9 +32,9 @@ GET Escalate the perceived severity - Method not implemented PUT Escalate the perceived severity - Method not implemented [Documentation] Test ID: 6.3.4.3.3 ... Test title: PUT Escalate the perceived severity - Method not implemented - ... Test objective: to test that the method is not implemented + ... Test objective: The objective is to test that the PUT HTTP method not implemented for escalate perceived severity ... Pre-conditions: - ... Reference: clause 7.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -44,9 +44,9 @@ PUT Escalate the perceived severity - Method not implemented PATCH Escalate the perceived severity - Method not implemented [Documentation] Test ID: 6.3.4.3.4 ... Test title: PATCH Escalate the perceived severity - Method not implemented - ... Test objective: to test that the method is not implemented + ... Test objective: The objective is to test that the PATCH HTTP method not implemented for escalate perceived severity ... Pre-conditions: - ... Reference: clause 7.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -57,9 +57,9 @@ PATCH Escalate the perceived severity - Method not implemented DELETE Escalate the perceived severity - Method not implemented [Documentation] Test ID: 6.3.4.3.5 ... Test title: DELETE Escalate the perceived severity - Method not implemented - ... Test objective: to test that the method is not implemented + ... Test objective: The objective is to test that the DELETE HTTP method not implemented for escalate perceived severity ... Pre-conditions: - ... Reference: clause 7.4.4.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.4.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -80,35 +80,35 @@ POST escalate severity Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Post ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId}/escalate ${PerceivedSeverity} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET escalate severity log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId}/escalate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT escalate severity log Trying to perform a PUT. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId}/escalate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH escalate severity log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId}/escalate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE escalate severity log Trying to perform a DELETE. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId}/escalate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Check HTTP Response Status Code Is [Arguments] ${expected_status} - Should Be Equal ${response.status_code} ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} Log Status code validated Check HTTP Response Body Json Schema Is diff --git a/SOL002/VNFFaultManagement-API/IndividualAlarm.robot b/SOL002/VNFFaultManagement-API/IndividualAlarm.robot index 06d25b5cd627e5ac20b5f0b5985fd7a62733a017..d6c9454f31165718f179d2f5ba83652fc1753307 100644 --- a/SOL002/VNFFaultManagement-API/IndividualAlarm.robot +++ b/SOL002/VNFFaultManagement-API/IndividualAlarm.robot @@ -1,7 +1,7 @@ *** Settings *** # Suite setup Expect spec SOL003-VNFLifecycleManagement-API.yaml Resource environment/variables.txt -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -18,7 +18,7 @@ POST Alarm - Method not implemented ... Test title: POST Alarm - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.3.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.3.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: none @@ -31,7 +31,7 @@ GET information about an individual alarm ... Test title: GET information about an individual alarm ... Test objective: The objective is to read an individual alarm. ... Pre-conditions: The related alarm exists - ... Reference: clause 7.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -41,12 +41,12 @@ GET information about an individual alarm -PUT Alarm - Method not implemented +PUT Individual Alarm - Method not implemented [Documentation] Test ID: 6.3.4.2.3 - ... Test title: PUT Alarm - Method not implemented + ... Test title: PUT Individual Alarm - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.3.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.3.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: none @@ -54,12 +54,12 @@ PUT Alarm - Method not implemented Check HTTP Response Status Code Is 405 -PATCH Alarm +PATCH Individual Alarm [Documentation] Test ID: 6.3.4.2.4 - ... Test title: PATCH Alarm + ... Test title: PATCH Individual Alarm ... Test objective: The objective is to Modify an individual alarm resource ... Pre-conditions: The related alarm exists - ... Reference: clause 7.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: none @@ -67,12 +67,12 @@ PATCH Alarm Check HTTP Response Status Code Is 200 Check HTTP Response Body Json Schema Is alarmModifications -PATCH Alarm - Precondition failed +PATCH Individual Alarm - Precondition failed [Documentation] Test ID: 6.3.4.2.5 - ... Test title: PATCH Alarm - Precondition failed - ... Test objective: The objective is to Modify an individual alarm resource + ... Test title: PATCH Individual Alarm - Precondition failed + ... Test objective: The objective is to attempt to Modify an individual alarm resource, where the precondition was not met ... Pre-conditions: The related alarm exists - ... Reference: clause 7.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: The alarm resource is not modified @@ -80,12 +80,12 @@ PATCH Alarm - Precondition failed Check HTTP Response Status Code Is 412 Check HTTP Response Body Json Schema Is ProblemDetails -PATCH Alarm - Conflict +PATCH Individual Alarm - Conflict [Documentation] Test ID: 6.3.4.2.6 - ... Test title: PATCH Alarm - Conflict + ... Test title: PATCH Individual Alarm - Conflict ... Test objective: The objective is to Modify an individual alarm resource ... Pre-conditions: The related alarm exists - ... Reference: clause 7.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: The alarm resource is not modified @@ -94,12 +94,12 @@ PATCH Alarm - Conflict Check HTTP Response Body Json Schema Is ProblemDetails -DELETE Alarm - Method not implemented +DELETE Individual Alarm - Method not implemented [Documentation] Test ID: 6.3.4.2.7 - ... Test title: DELETE Alarm - Method not implemented + ... Test title: DELETE Individual Alarm - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: alarm not deleted @@ -113,7 +113,7 @@ POST Alarm Task Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Post ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Alarm Task log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} @@ -121,7 +121,7 @@ PUT Alarm Task ${body}= Get File jsons/alarmModifications.json Put ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Alarm Task log Trying to perform a PATCH. This method modifies an individual alarm resource Set Headers {"Accept":"${ACCEPT}"} @@ -131,7 +131,7 @@ PATCH Alarm Task ${body}= Get File jsons/alarmModifications.json Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Alarm Task with wrong precondition log Trying to perform a PATCH. This method modifies an individual alarm resource Set Headers {"Accept":"${ACCEPT}"} @@ -140,14 +140,14 @@ PATCH Alarm Task with wrong precondition ${body}= Get File jsons/alarmModifications.json Patch ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Alarm Task log Trying to perform a DELETE. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/alarms/${alarmId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Alarm Task Log Query VNF The GET method queries information about individual alarm. Set Headers {"Accept":"${ACCEPT}"} @@ -157,7 +157,7 @@ GET Alarm Task ${etag} Output response headers ETag Set Suite Variable &{original_etag} ${etag} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Alarm Task with filter Log Query VNF The GET method queries information about individual alarm with filters. Set Headers {"Accept":"${ACCEPT}"} @@ -165,7 +165,7 @@ GET Alarm Task with filter Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/alarms?${alarm_filter}=${managedObjectId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Alarm Task with invalid filter Log Query VNF The GET method queries information about individual alarm with filters. Set Headers {"Accept":"${ACCEPT}"} @@ -173,10 +173,10 @@ GET Alarm Task with invalid filter Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/alarms?${invalid_alarm_filter}=${managedObjectId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Check HTTP Response Status Code Is [Arguments] ${expected_status} - Should Be Equal ${response.status_code} ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} Log Status code validated Check HTTP Response Body Json Schema Is @@ -184,4 +184,4 @@ Check HTTP Response Body Json Schema Is Should Contain ${response['headers']['Content-Type']} application/json ${schema} = Catenate SEPARATOR= ${input} .schema.json Validate Json ${schema} ${response['body']} - Log Json Schema Validation OK \ No newline at end of file + Log Json Schema Validation OK diff --git a/SOL002/VNFFaultManagement-API/IndividualSubscription.robot b/SOL002/VNFFaultManagement-API/IndividualSubscription.robot index a98869517c2c823e980586228875dce5a96b88bb..db5d06baf720809bc3df8c8a145cc21f3a3ea72c 100644 --- a/SOL002/VNFFaultManagement-API/IndividualSubscription.robot +++ b/SOL002/VNFFaultManagement-API/IndividualSubscription.robot @@ -2,7 +2,7 @@ Resource environment/variables.txt Library JSONLibrary Library JSONSchemaLibrary schemas/ -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Documentation This resource represents an individual subscription for VNF alarms. ... The client can use this resource to read and to terminate a subscription to notifications related to VNF fault management. Suite Setup Check resource existence @@ -13,7 +13,7 @@ POST Individual Subscription - Method not implemented ... Test title: POST Individual Subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -25,7 +25,7 @@ GET Information about an individual subscription ... Test title: GET Information about an individual subscription ... Test objective: The objective is to read an individual subscription for VNF alarms subscribed by the client ... Pre-conditions: The subscription with the given id exists - ... Reference: clause 7.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -38,7 +38,7 @@ PUT an individual subscription - Method not implemented ... Test title: PUT an individual subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -51,7 +51,7 @@ PATCH an individual subscription - Method not implemented ... Test title: PATCH an individual subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -64,11 +64,10 @@ DELETE an individual subscription ... Test title: DELETE an individual subscription ... Test objective: The objective is to test that the deletion of a subscription ... Pre-conditions: an existing subscription - ... Reference: clause 7.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: the subscription is deleted - Check resource existence Delete individual subscription Check HTTP Response Status Code Is 204 @@ -84,35 +83,35 @@ Post Create individual subscription Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get individual subscription log Trying to get information about an individual subscription Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get individual subscription - filter Log Get the list of active individual subscription using a filter Set Headers {"Accept": "${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get individual subscription - invalid filter Log Get the list of active individual subscription using an invalid filter Set Headers {"Accept": "${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter_invalid} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT individual subscription log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH individual subscription log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} @@ -120,18 +119,18 @@ PATCH individual subscription Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE individual subscription log Try to delete an individual subscription Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Check HTTP Response Status Code Is [Arguments] ${expected_status} - Should Be Equal ${response.status_code} ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} Log Status code validated Check HTTP Response Body Json Schema Is @@ -139,4 +138,4 @@ Check HTTP Response Body Json Schema Is Should Contain ${response['headers']['Content-Type']} application/json ${schema} = Catenate SEPARATOR= ${input} .schema.json Validate Json ${schema} ${response['body']} - Log Json Schema Validation OK \ No newline at end of file + Log Json Schema Validation OK diff --git a/SOL002/VNFFaultManagement-API/NotificationEndpoint.robot b/SOL002/VNFFaultManagement-API/NotificationEndpoint.robot index 2201f3d1b27fabddfa12ca83c6c170e46159156c..0b8e28edac324e2e9662679b0cb1f79d065eafd0 100644 --- a/SOL002/VNFFaultManagement-API/NotificationEndpoint.robot +++ b/SOL002/VNFFaultManagement-API/NotificationEndpoint.robot @@ -15,7 +15,7 @@ VNF Fault Alarm Notification ... Test title: VNF Fault Alarm Notification ... Test objective: The objective is to test the dispatch of VNF Fault Alarm Notification when a virtualised resource within an VNF instance fails, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF instance is instantiated, and a subscription for fault alarm notifications is available in the VNFM. - ... Reference: clause 7.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -28,7 +28,7 @@ VNF Fault Alarm Cleared Notification ... Test title: VNF Fault Alarm Cleared Notification ... Test objective: The objective is to test the dispatch of VNF Fault Alarm Cleared Notification when a faulty virtualised resource within an VNF instance is cleared, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF instance is instantiated, a virtualised resource is in faulty state, and a subscription for fault alarm cleared notifications is available in the VNFM. - ... Reference: clause 7.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -41,7 +41,7 @@ VNF Fault Alarm List Rebuilt Notification ... Test title: VNF Fault Alarm List Rebuilt Notification ... Test objective: The objective is to test the dispatch of VNF Fault Alarm List Rebuilt Notification when the VNFM decides to rebuild the list of its VNF alarms, e.g. due to a corruption in the alarm storage, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF instance is instantiated, one or more virtualised resource are in faulty state, and a subscription for fault alarm list rebuilt notifications is available in the VNFM. - ... Reference: clause 7.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL002/VNFFaultManagement-API/SOL002-VNFFaultManagement-API.json b/SOL002/VNFFaultManagement-API/SOL002-VNFFaultManagement-API.json deleted file mode 100644 index 009e6df2f52cf6d4327d985ebf5c28bfb4c4df14..0000000000000000000000000000000000000000 --- a/SOL002/VNFFaultManagement-API/SOL002-VNFFaultManagement-API.json +++ /dev/null @@ -1,4257 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "1.1.1", - "title": "DRAFT - SOL002 - VNF Fault Management interface", - "description": "DRAFT VNF Fault Management interface of ETSI NFV SOL002\nIMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to. In case of discrepancies the published ETSI Group Specification takes precedence.\n\nPlease report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=---\n", - "license": { - "name": "ETSI Forge copyright notice", - "url": "https://forge.etsi.org/etsi-forge-copyright-notice.txt" - } - }, - "externalDocs": { - "description": "ETSI GS NFV-SOL 002 V2.4.1", - "url": "http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf" - }, - "basePath": "/vnffm/v1", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/alarms": { - "get": { - "description": "The client can use this method to retrieve information about the alarm list.\n", - "parameters": [ - { - "name": "Accept", - "description": "Content-Types that are acceptable for the response. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Content-Type", - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "The request has succeeded. The response body shall contain the list of related alarms.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The alarm data type encapsulates information about an alarm.\n", - "type": "object", - "required": [ - "id", - "managedObjectId", - "rootCauseFaultyResource", - "alarmRaisedTime", - "ackState", - "perceivedSeverity", - "eventTime", - "eventType", - "probableCause", - "isRootCause", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "managedObjectId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "rootCauseFaultyResource": { - "description": "This type represents the faulty virtual resources that have a negative impact on a VNF.\n", - "type": "object", - "required": [ - "faultyResource", - "faultyResourceType" - ], - "properties": { - "faultyResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "faultyResourceType": { - "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] - } - } - }, - "alarmRaisedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "alarmChangedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "alarmClearedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "ackState": { - "description": "Acknowledgement state of the alarm. Permitted values: * UNACKNOWLEDGED * ACKNOWLEDGED.\n", - "type": "string", - "enum": [ - "UNACKNOWLEDGED", - "ACKNOWLEDGED" - ] - }, - "perceivedSeverity": { - "type": "string" - }, - "eventTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "eventType": { - "type": "string" - }, - "faultType": { - "description": "Additional information to clarify the type of the fault.\n", - "type": "string" - }, - "probableCause": { - "description": "Information about the probable cause of the fault.\n", - "type": "string" - }, - "isRootCause": { - "description": "Attribute indicating if this fault is the root for other correlated alarms. If TRUE, then the alarms listed in the attribute CorrelatedAlarmId are caused by this fault.\n", - "type": "boolean" - }, - "correlatedAlarmIds": { - "description": "List of identifiers of other alarms correlated to this fault.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "faultDetails": { - "description": "Provides additional information about the fault.\n", - "type": "array", - "items": { - "type": "string" - } - }, - "_links": { - "description": "Links for this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "objectInstance": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nInvalid attribute-based filtering parameters or Invalid attribute selector. It fhe request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string" - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/alarms/{alarmId}": { - "parameters": [ - { - "name": "alarmId", - "description": "Identifier of the alarm. This identifier can be retrieved from the \"id\" attribute of the \"alarm\" attribute in the AlarmNotification or AlarmClearedNotification. It can also be retrieved from the \"id\" attribute of the applicable array element in the payload body of the response to a GET request to the \"Alarms\" resource.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "get": { - "description": "The client can use this method to read an individual alarm.\n", - "parameters": [ - { - "name": "Accept", - "description": "Content-Types that are acceptable for the response. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Content-Type", - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Information about an individual alarm was read successfully. The response body shall contain a representation of the individual alarm.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The alarm data type encapsulates information about an alarm.\n", - "type": "object", - "required": [ - "id", - "managedObjectId", - "rootCauseFaultyResource", - "alarmRaisedTime", - "ackState", - "perceivedSeverity", - "eventTime", - "eventType", - "probableCause", - "isRootCause", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "managedObjectId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "rootCauseFaultyResource": { - "description": "This type represents the faulty virtual resources that have a negative impact on a VNF.\n", - "type": "object", - "required": [ - "faultyResource", - "faultyResourceType" - ], - "properties": { - "faultyResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "faultyResourceType": { - "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] - } - } - }, - "alarmRaisedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "alarmChangedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "alarmClearedTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "ackState": { - "description": "Acknowledgement state of the alarm. Permitted values: * UNACKNOWLEDGED * ACKNOWLEDGED.\n", - "type": "string", - "enum": [ - "UNACKNOWLEDGED", - "ACKNOWLEDGED" - ] - }, - "perceivedSeverity": { - "type": "string" - }, - "eventTime": { - "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", - "type": "string", - "format": "date-time" - }, - "eventType": { - "type": "string" - }, - "faultType": { - "description": "Additional information to clarify the type of the fault.\n", - "type": "string" - }, - "probableCause": { - "description": "Information about the probable cause of the fault.\n", - "type": "string" - }, - "isRootCause": { - "description": "Attribute indicating if this fault is the root for other correlated alarms. If TRUE, then the alarms listed in the attribute CorrelatedAlarmId are caused by this fault.\n", - "type": "boolean" - }, - "correlatedAlarmIds": { - "description": "List of identifiers of other alarms correlated to this fault.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "faultDetails": { - "description": "Provides additional information about the fault.\n", - "type": "array", - "items": { - "type": "string" - } - }, - "_links": { - "description": "Links for this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "objectInstance": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "patch": { - "description": "This method modifies an individual alarm resource.\n", - "parameters": [ - { - "name": "AlarmModifications", - "description": "The parameter for the alarm modification", - "in": "body", - "required": true, - "schema": { - "description": "This type represents attribute modifications for an \"Individual alarm\" resource, i.e. modifications to a resource representation based on the \"Alarm\" data type. The attributes of \"Alarm\" that can be modified are included in the \"AlarmModifications\" data type.\n", - "type": "object", - "required": [ - "ackState" - ], - "properties": { - "ackState": { - "description": "New value of the \"ackState\" attribute in \"Alarm\". Permitted values: * ACKNOWLEDGED\n", - "type": "string", - "enum": [ - "ACKNOWLEDGED" - ] - } - } - } - }, - { - "name": "Accept", - "description": "Content-Types that are acceptable for the response. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Content-Type", - "description": "The Content-Type header shall be set to \"application/mergepatch+json\" Reference: IETF RFC 7396\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK\nThe request was accepted and completed. The response body shall contain attribute modifications for an ‘Individual alarm’ resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents attribute modifications for an \"Individual alarm\" resource, i.e. modifications to a resource representation based on the \"Alarm\" data type. The attributes of \"Alarm\" that can be modified are included in the \"AlarmModifications\" data type.\n", - "type": "object", - "required": [ - "ackState" - ], - "properties": { - "ackState": { - "description": "New value of the \"ackState\" attribute in \"Alarm\". Permitted values: * ACKNOWLEDGED\n", - "type": "string", - "enum": [ - "ACKNOWLEDGED" - ] - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the \"Individual alarm\" resource. Typically, this is due to the fact that the alarm is already in the state that is requested to be set (such as trying to acknowledge an already-acknowledged alarm). The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "412": { - "description": "Precondition Failed\nA 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/alarms/{alarmId}/escalate": { - "post": { - "description": "The POST method enables the consumer to escalate the perceived severity of an alarm that is represented by an ndividual alarm resource.\n", - "parameters": [ - { - "name": "PerceivedSeverityRequest", - "description": "The proposed \"escalated perceived severity\" value", - "in": "body", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "OK\nThe VNFM has received the proposed \"escalated perceived severity\" value successfully. The response body shall be empty.\n" - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "412": { - "description": "Precondition Failed\nA 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/alarms/subscriptions": { - "post": { - "description": "The POST method creates a new subscription.\n", - "parameters": [ - { - "name": "FmSubscriptionRequest", - "description": "The VNF creation parameters", - "in": "body", - "required": true, - "schema": { - "description": "This type represents a subscription request related to notifications about VNF faults.\n", - "type": "object", - "required": [ - "callbackUri" - ], - "properties": { - "filter": { - "description": "This type represents a subscription filter related to notifications about VNF faults. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vnfInstanceSubscriptionFilter": { - "description": "This type represents subscription filter criteria to match VNF instances.\n", - "type": "object", - "properties": { - "vnfdIds": { - "description": "If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfProductsFromProviders": { - "description": "If present, match VNF instances that belong to VNF products from certain providers. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProvider" - ], - "properties": { - "vnfProvider": { - "description": "Name of the VNF provider to match.\n", - "type": "string" - }, - "vnfProducts": { - "description": "If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProductName" - ], - "properties": { - "vnfProductName": { - "description": "Name of the VNF product to match.\n", - "type": "string" - }, - "versions": { - "description": "If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfSoftwareVersion" - ], - "properties": { - "vnfSoftwareVersion": { - "description": "A version.\n", - "type": "string" - }, - "vnfdVersions": { - "description": "If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "description": "A version.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "notificationTypes": { - "description": "Match particular notification types. Permitted values: * AlarmNotification * AlarmClearedNotification * AlarmListRebuiltNotification The permitted values of the \"notificationTypes\" attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "AlarmNotification", - "AlarmClearedNotification", - "AlarmListRebuiltNotification" - ] - } - }, - "faultyResourceTypes": { - "description": "Match VNF alarms with a faulty resource type listed in this attribute.\n", - "type": "array", - "items": { - "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] - } - }, - "perceivedSeverities": { - "description": "Match VNF alarms with a perceived severity listed in this attribute.\n", - "type": "array", - "items": { - "description": "Indicates the relative level of urgency for operator attention. * CRITICAL: The Critical severity level indicates that a service affecting condition has occurred and an immediate corrective action\n is required. Such a severity can be reported, for example, when a\n managed object becomes totally out of service and its capability needs\n to be restored (ITU-T Recommendation X.733).\n* MAJOR: The Major severity level indicates that a service affecting condition has developed and an urgent corrective action is required.\n Such a severity can be reported, for example, when there is a severe\n degradation in the capability of the managed object and its full\n capability needs to be restored (ITU-T Recommendation X.733).\n* MINOR: The Minor severity level indicates the existence of a non-service affecting fault condition and that corrective action\n should be taken in order to prevent a more serious (for example,\n service affecting) fault. Such a severity can be reported, for\n example, when the detected alarm condition is not currently degrading\n the capacity of the managed object (ITU-T Recommendation X.733).\n* WARNING: The Warning severity level indicates the detection of a potential or impending service affecting fault, before any significant\n effects have been felt. Action should be taken to further diagnose (if\n necessary) and correct the problem in order to prevent it from\n becoming a more serious service affecting fault (ITU-T Recommendation\n X.733).\n* INDETERMINATE: The Indeterminate severity level indicates that the severity level cannot be determined (ITU-T Recommendation X.733).\n* CLEARED: The Cleared severity level indicates the clearing of one or more previously reported alarms. This alarm clears all alarms for this\n managed object that have the same Alarm type, Probable cause and\n Specific problems (if given) (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "CRITICAL", - "MAJOR", - "MINOR", - "WARNING", - "INDETERMINATE", - "CLEARED" - ] - } - }, - "eventTypes": { - "description": "Match VNF alarms with an event type listed in this attribute.\n", - "type": "array", - "items": { - "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the procedure and/or process required conveying information from one point\n to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a condition related to an enclosure in which the equipment resides\n (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "COMMUNICATIONS_ALARM", - "PROCESSING_ERROR_ALARM", - "ENVIRONMENTAL_ALARM", - "QOS_ALARM", - "EQUIPMENT_ALARM" - ] - } - }, - "probableCauses": { - "description": "Match VNF alarms with a probable cause listed in this attribute.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "callbackUri": { - "description": "The URI of the endpoint to send the notification to.\n", - "type": "string", - "format": "url" - }, - "authentication": { - "type": "object", - "required": [ - "authType" - ], - "properties": { - "authType": { - "description": "Defines the types of Authentication / Authorization which the API consumer is willing to accept when receiving a notification. Permitted values: * BASIC: In every HTTP request to the notification endpoint, use HTTP Basic authentication with the client credentials. \n* OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the notification endpoint, use an OAuth 2.0 Bearer token, obtained\n using the client credentials grant type.\n* TLS_CERT: Every HTTP request to the notification endpoint is sent over a mutually authenticated TLS session, i.e. not only the\n server is authenticated, but also the client is authenticated\n during the TLS tunnel setup.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "BASIC", - "OAUTH2_CLIENT_CREDENTIALS", - "TLS_CERT" - ] - } - }, - "paramsBasic": { - "description": "Parameters for authentication/authorization using BASIC. Shall be present if authType is \"BASIC\" and the contained information has not been provisioned out of band. Shall be absent otherwise.\n", - "type": "object", - "properties": { - "userName": { - "description": "Username to be used in HTTP Basic authentication. Shall be present if it has not been provisioned out of band.\n", - "type": "string" - }, - "password": { - "description": "Password to be used in HTTP Basic authentication. Shall be present if it has not been provisioned out of band.\n", - "type": "string" - } - } - }, - "paramsOauth2ClientCredentials": { - "description": "Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS. Shall be present if authType is \"OAUTH2_CLIENT_CREDENTIALS\" and the contained information has not been provisioned out of band. Shall be absent otherwise.\n", - "type": "object", - "properties": { - "clientId": { - "description": "Client identifier to be used in the access token request of the OAuth 2.0 client credentials grant type. Shall be present if it has not been provisioned out of band. The clientId and clientPassword passed in a subscription shall not be the same as the clientId and clientPassword that are used to obtain authorization for API requests. Client credentials may differ between subscriptions. The value of clientPassword should be generated by a random process.\n", - "type": "string" - }, - "clientPassword": { - "description": "Client password to be used in the access token request of the OAuth 2.0 client credentials grant type. Shall be present if it has not been provisioned out of band. The clientId and clientPassword passed in a subscription shall not be the same as the clientId and clientPassword that are used to obtain authorization for API requests. Client credentials may differ between subscriptions. The value of clientPassword should be generated by a random process.\n", - "type": "string" - }, - "tokenEndpoint": { - "description": "String formatted according to IETF RFC 3986.\n", - "type": "string" - } - } - } - } - } - } - } - }, - { - "name": "Accept", - "description": "Content-Types that are acceptable for the response. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Content-Type", - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "Created\nThe subscription was created successfully. The response body shall contain a representation of the created subscription resource. The HTTP response shall include a \"Location:\" HTTP header that points to the created subscription resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created subscription resource.\n", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a subscription related to notifications about VNF faults.\n", - "type": "object", - "required": [ - "id", - "callbackUri", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "filter": { - "description": "This type represents a subscription filter related to notifications about VNF faults. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vnfInstanceSubscriptionFilter": { - "description": "This type represents subscription filter criteria to match VNF instances.\n", - "type": "object", - "properties": { - "vnfdIds": { - "description": "If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfProductsFromProviders": { - "description": "If present, match VNF instances that belong to VNF products from certain providers. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProvider" - ], - "properties": { - "vnfProvider": { - "description": "Name of the VNF provider to match.\n", - "type": "string" - }, - "vnfProducts": { - "description": "If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProductName" - ], - "properties": { - "vnfProductName": { - "description": "Name of the VNF product to match.\n", - "type": "string" - }, - "versions": { - "description": "If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfSoftwareVersion" - ], - "properties": { - "vnfSoftwareVersion": { - "description": "A version.\n", - "type": "string" - }, - "vnfdVersions": { - "description": "If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "description": "A version.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "notificationTypes": { - "description": "Match particular notification types. Permitted values: * AlarmNotification * AlarmClearedNotification * AlarmListRebuiltNotification The permitted values of the \"notificationTypes\" attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "AlarmNotification", - "AlarmClearedNotification", - "AlarmListRebuiltNotification" - ] - } - }, - "faultyResourceTypes": { - "description": "Match VNF alarms with a faulty resource type listed in this attribute.\n", - "type": "array", - "items": { - "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] - } - }, - "perceivedSeverities": { - "description": "Match VNF alarms with a perceived severity listed in this attribute.\n", - "type": "array", - "items": { - "description": "Indicates the relative level of urgency for operator attention. * CRITICAL: The Critical severity level indicates that a service affecting condition has occurred and an immediate corrective action\n is required. Such a severity can be reported, for example, when a\n managed object becomes totally out of service and its capability needs\n to be restored (ITU-T Recommendation X.733).\n* MAJOR: The Major severity level indicates that a service affecting condition has developed and an urgent corrective action is required.\n Such a severity can be reported, for example, when there is a severe\n degradation in the capability of the managed object and its full\n capability needs to be restored (ITU-T Recommendation X.733).\n* MINOR: The Minor severity level indicates the existence of a non-service affecting fault condition and that corrective action\n should be taken in order to prevent a more serious (for example,\n service affecting) fault. Such a severity can be reported, for\n example, when the detected alarm condition is not currently degrading\n the capacity of the managed object (ITU-T Recommendation X.733).\n* WARNING: The Warning severity level indicates the detection of a potential or impending service affecting fault, before any significant\n effects have been felt. Action should be taken to further diagnose (if\n necessary) and correct the problem in order to prevent it from\n becoming a more serious service affecting fault (ITU-T Recommendation\n X.733).\n* INDETERMINATE: The Indeterminate severity level indicates that the severity level cannot be determined (ITU-T Recommendation X.733).\n* CLEARED: The Cleared severity level indicates the clearing of one or more previously reported alarms. This alarm clears all alarms for this\n managed object that have the same Alarm type, Probable cause and\n Specific problems (if given) (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "CRITICAL", - "MAJOR", - "MINOR", - "WARNING", - "INDETERMINATE", - "CLEARED" - ] - } - }, - "eventTypes": { - "description": "Match VNF alarms with an event type listed in this attribute.\n", - "type": "array", - "items": { - "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the procedure and/or process required conveying information from one point\n to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a condition related to an enclosure in which the equipment resides\n (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "COMMUNICATIONS_ALARM", - "PROCESSING_ERROR_ALARM", - "ENVIRONMENTAL_ALARM", - "QOS_ALARM", - "EQUIPMENT_ALARM" - ] - } - }, - "probableCauses": { - "description": "Match VNF alarms with a probable cause listed in this attribute.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "callbackUri": { - "description": "The URI of the endpoint to send the notification to.\n", - "type": "string", - "format": "url" - }, - "_links": { - "description": "Links for this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "303": { - "description": "See Other\nA subscription with the same callbackURI and the same filter already exists and the policy of the VNFM is to not create redundant subscriptions. The HTTP response shall include a \"Location\" HTTP header that contains the resource URI of the existing subscription resource. The response body shall be empty.\n" - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "get": { - "description": "The client can use this method to retrieve the list of active subscriptions for VNF alarms subscribed by the client. It can be used e.g. for resynchronization after error situations.\n", - "parameters": [ - { - "name": "Accept", - "description": "Content-Types that are acceptable for the response. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Content-Type", - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK\nThe list of subscriptions was queried successfully. The response body shall contain the representations of all active subscriptions of the functional block that invokes the method.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a subscription related to notifications about VNF faults.\n", - "type": "object", - "required": [ - "id", - "callbackUri", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "filter": { - "description": "This type represents a subscription filter related to notifications about VNF faults. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vnfInstanceSubscriptionFilter": { - "description": "This type represents subscription filter criteria to match VNF instances.\n", - "type": "object", - "properties": { - "vnfdIds": { - "description": "If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfProductsFromProviders": { - "description": "If present, match VNF instances that belong to VNF products from certain providers. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProvider" - ], - "properties": { - "vnfProvider": { - "description": "Name of the VNF provider to match.\n", - "type": "string" - }, - "vnfProducts": { - "description": "If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProductName" - ], - "properties": { - "vnfProductName": { - "description": "Name of the VNF product to match.\n", - "type": "string" - }, - "versions": { - "description": "If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfSoftwareVersion" - ], - "properties": { - "vnfSoftwareVersion": { - "description": "A version.\n", - "type": "string" - }, - "vnfdVersions": { - "description": "If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "description": "A version.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "notificationTypes": { - "description": "Match particular notification types. Permitted values: * AlarmNotification * AlarmClearedNotification * AlarmListRebuiltNotification The permitted values of the \"notificationTypes\" attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "AlarmNotification", - "AlarmClearedNotification", - "AlarmListRebuiltNotification" - ] - } - }, - "faultyResourceTypes": { - "description": "Match VNF alarms with a faulty resource type listed in this attribute.\n", - "type": "array", - "items": { - "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] - } - }, - "perceivedSeverities": { - "description": "Match VNF alarms with a perceived severity listed in this attribute.\n", - "type": "array", - "items": { - "description": "Indicates the relative level of urgency for operator attention. * CRITICAL: The Critical severity level indicates that a service affecting condition has occurred and an immediate corrective action\n is required. Such a severity can be reported, for example, when a\n managed object becomes totally out of service and its capability needs\n to be restored (ITU-T Recommendation X.733).\n* MAJOR: The Major severity level indicates that a service affecting condition has developed and an urgent corrective action is required.\n Such a severity can be reported, for example, when there is a severe\n degradation in the capability of the managed object and its full\n capability needs to be restored (ITU-T Recommendation X.733).\n* MINOR: The Minor severity level indicates the existence of a non-service affecting fault condition and that corrective action\n should be taken in order to prevent a more serious (for example,\n service affecting) fault. Such a severity can be reported, for\n example, when the detected alarm condition is not currently degrading\n the capacity of the managed object (ITU-T Recommendation X.733).\n* WARNING: The Warning severity level indicates the detection of a potential or impending service affecting fault, before any significant\n effects have been felt. Action should be taken to further diagnose (if\n necessary) and correct the problem in order to prevent it from\n becoming a more serious service affecting fault (ITU-T Recommendation\n X.733).\n* INDETERMINATE: The Indeterminate severity level indicates that the severity level cannot be determined (ITU-T Recommendation X.733).\n* CLEARED: The Cleared severity level indicates the clearing of one or more previously reported alarms. This alarm clears all alarms for this\n managed object that have the same Alarm type, Probable cause and\n Specific problems (if given) (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "CRITICAL", - "MAJOR", - "MINOR", - "WARNING", - "INDETERMINATE", - "CLEARED" - ] - } - }, - "eventTypes": { - "description": "Match VNF alarms with an event type listed in this attribute.\n", - "type": "array", - "items": { - "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the procedure and/or process required conveying information from one point\n to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a condition related to an enclosure in which the equipment resides\n (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "COMMUNICATIONS_ALARM", - "PROCESSING_ERROR_ALARM", - "ENVIRONMENTAL_ALARM", - "QOS_ALARM", - "EQUIPMENT_ALARM" - ] - } - }, - "probableCauses": { - "description": "Match VNF alarms with a probable cause listed in this attribute.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "callbackUri": { - "description": "The URI of the endpoint to send the notification to.\n", - "type": "string", - "format": "url" - }, - "_links": { - "description": "Links for this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nInvalid attribute-based filtering parameters or Invalid attribute selector. It fhe request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string" - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "412": { - "description": "Precondition Failed\nA 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/subscriptions/{subscriptionId}": { - "parameters": [ - { - "name": "subscriptionId", - "description": "Identifier of this subscription. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "get": { - "description": "The client can use this method for reading an individual subscription for VNF alarms subscribed by the client.\n", - "parameters": [ - { - "name": "Accept", - "description": "Content-Types that are acceptable for the response. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Content-Type", - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK\nThe operation has completed successfully. The response body shall contain a representation of the subscription resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a subscription related to notifications about VNF faults.\n", - "type": "object", - "required": [ - "id", - "callbackUri", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "filter": { - "description": "This type represents a subscription filter related to notifications about VNF faults. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vnfInstanceSubscriptionFilter": { - "description": "This type represents subscription filter criteria to match VNF instances.\n", - "type": "object", - "properties": { - "vnfdIds": { - "description": "If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfProductsFromProviders": { - "description": "If present, match VNF instances that belong to VNF products from certain providers. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProvider" - ], - "properties": { - "vnfProvider": { - "description": "Name of the VNF provider to match.\n", - "type": "string" - }, - "vnfProducts": { - "description": "If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProductName" - ], - "properties": { - "vnfProductName": { - "description": "Name of the VNF product to match.\n", - "type": "string" - }, - "versions": { - "description": "If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfSoftwareVersion" - ], - "properties": { - "vnfSoftwareVersion": { - "description": "A version.\n", - "type": "string" - }, - "vnfdVersions": { - "description": "If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "description": "A version.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "notificationTypes": { - "description": "Match particular notification types. Permitted values: * AlarmNotification * AlarmClearedNotification * AlarmListRebuiltNotification The permitted values of the \"notificationTypes\" attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "AlarmNotification", - "AlarmClearedNotification", - "AlarmListRebuiltNotification" - ] - } - }, - "faultyResourceTypes": { - "description": "Match VNF alarms with a faulty resource type listed in this attribute.\n", - "type": "array", - "items": { - "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n", - "type": "string", - "enum": [ - "COMPUTE", - "STORAGE", - "NETWORK" - ] - } - }, - "perceivedSeverities": { - "description": "Match VNF alarms with a perceived severity listed in this attribute.\n", - "type": "array", - "items": { - "description": "Indicates the relative level of urgency for operator attention. * CRITICAL: The Critical severity level indicates that a service affecting condition has occurred and an immediate corrective action\n is required. Such a severity can be reported, for example, when a\n managed object becomes totally out of service and its capability needs\n to be restored (ITU-T Recommendation X.733).\n* MAJOR: The Major severity level indicates that a service affecting condition has developed and an urgent corrective action is required.\n Such a severity can be reported, for example, when there is a severe\n degradation in the capability of the managed object and its full\n capability needs to be restored (ITU-T Recommendation X.733).\n* MINOR: The Minor severity level indicates the existence of a non-service affecting fault condition and that corrective action\n should be taken in order to prevent a more serious (for example,\n service affecting) fault. Such a severity can be reported, for\n example, when the detected alarm condition is not currently degrading\n the capacity of the managed object (ITU-T Recommendation X.733).\n* WARNING: The Warning severity level indicates the detection of a potential or impending service affecting fault, before any significant\n effects have been felt. Action should be taken to further diagnose (if\n necessary) and correct the problem in order to prevent it from\n becoming a more serious service affecting fault (ITU-T Recommendation\n X.733).\n* INDETERMINATE: The Indeterminate severity level indicates that the severity level cannot be determined (ITU-T Recommendation X.733).\n* CLEARED: The Cleared severity level indicates the clearing of one or more previously reported alarms. This alarm clears all alarms for this\n managed object that have the same Alarm type, Probable cause and\n Specific problems (if given) (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "CRITICAL", - "MAJOR", - "MINOR", - "WARNING", - "INDETERMINATE", - "CLEARED" - ] - } - }, - "eventTypes": { - "description": "Match VNF alarms with an event type listed in this attribute.\n", - "type": "array", - "items": { - "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the procedure and/or process required conveying information from one point\n to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a condition related to an enclosure in which the equipment resides\n (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733).\n", - "type": "string", - "enum": [ - "COMMUNICATIONS_ALARM", - "PROCESSING_ERROR_ALARM", - "ENVIRONMENTAL_ALARM", - "QOS_ALARM", - "EQUIPMENT_ALARM" - ] - } - }, - "probableCauses": { - "description": "Match VNF alarms with a probable cause listed in this attribute.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "callbackUri": { - "description": "The URI of the endpoint to send the notification to.\n", - "type": "string", - "format": "url" - }, - "_links": { - "description": "Links for this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "delete": { - "description": "This method terminates an individual subscription.\n", - "parameters": [ - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "204": { - "description": "No Content\nThe subscription resource was deleted successfully. The response body shall be empty.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Method Not Allowed\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/SOL002/VNFFaultManagement-API/SOL002-VNFFaultManagement-API.yaml b/SOL002/VNFFaultManagement-API/SOL002-VNFFaultManagement-API.yaml deleted file mode 100644 index 1d7825ffe1ed400a377308e12cd503abdcb252c8..0000000000000000000000000000000000000000 --- a/SOL002/VNFFaultManagement-API/SOL002-VNFFaultManagement-API.yaml +++ /dev/null @@ -1,6539 +0,0 @@ -swagger: '2.0' -info: - version: 1.1.1 - title: DRAFT - SOL002 - VNF Fault Management interface - description: > - DRAFT VNF Fault Management interface of ETSI NFV SOL002 - - IMPORTANT: Please note that this file might be not aligned to the current - version of the ETSI Group Specification it refers to. In case of - discrepancies the published ETSI Group Specification takes precedence. - - - Please report bugs to - https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=--- - license: - name: ETSI Forge copyright notice - url: 'https://forge.etsi.org/etsi-forge-copyright-notice.txt' -externalDocs: - description: ETSI GS NFV-SOL 002 V2.4.1 - url: >- - http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf -basePath: /vnffm/v1 -schemes: - - http - - https -consumes: - - application/json -produces: - - application/json -paths: - /alarms: - get: - description: > - The client can use this method to retrieve information about the alarm - list. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. Reference: IETF - RFC 7231 - in: header - required: true - type: string - - name: Content-Type - description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - responses: - '200': - description: > - The request has succeeded. The response body shall contain the list - of related alarms. - headers: - Content-Type: - description: > - The MIME type of the body of the request. Reference: IETF RFC - 7231 - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - The alarm data type encapsulates information about an alarm. - type: object - required: - - id - - managedObjectId - - rootCauseFaultyResource - - alarmRaisedTime - - ackState - - perceivedSeverity - - eventTime - - eventType - - probableCause - - isRootCause - - _links - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - managedObjectId: - description: | - An identifier with the intention of being globally unique. - type: string - rootCauseFaultyResource: - description: > - This type represents the faulty virtual resources that have a - negative impact on a VNF. - type: object - required: - - faultyResource - - faultyResourceType - properties: - faultyResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. Information about the resource is available from - the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other resource - provider. It is expected to be unique within the VIM - instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or the - resource provider. - type: string - faultyResourceType: - description: > - The enumeration FaultyResourceType represents those types - of faulty resource. - type: string - enum: - - COMPUTE - - STORAGE - - NETWORK - alarmRaisedTime: - description: > - Date-time stamp. Representation: String formatted according - to IETF RFC 3339. - type: string - format: date-time - alarmChangedTime: - description: > - Date-time stamp. Representation: String formatted according - to IETF RFC 3339. - type: string - format: date-time - alarmClearedTime: - description: > - Date-time stamp. Representation: String formatted according - to IETF RFC 3339. - type: string - format: date-time - ackState: - description: > - Acknowledgement state of the alarm. Permitted values: * - UNACKNOWLEDGED * ACKNOWLEDGED. - type: string - enum: - - UNACKNOWLEDGED - - ACKNOWLEDGED - perceivedSeverity: - type: string - eventTime: - description: > - Date-time stamp. Representation: String formatted according - to IETF RFC 3339. - type: string - format: date-time - eventType: - type: string - faultType: - description: | - Additional information to clarify the type of the fault. - type: string - probableCause: - description: | - Information about the probable cause of the fault. - type: string - isRootCause: - description: > - Attribute indicating if this fault is the root for other - correlated alarms. If TRUE, then the alarms listed in the - attribute CorrelatedAlarmId are caused by this fault. - type: boolean - correlatedAlarmIds: - description: | - List of identifiers of other alarms correlated to this fault. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - faultDetails: - description: | - Provides additional information about the fault. - type: array - items: - type: string - _links: - description: | - Links for this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - objectInstance: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - Invalid attribute-based filtering parameters or Invalid attribute - selector. It fhe request is malformed or syntactically incorrect - (e.g. if the request URI contains incorrect query parameters or a - syntactically incorrect payload body), 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 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. 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/alarms/{alarmId}': - parameters: - - name: alarmId - description: > - Identifier of the alarm. This identifier can be retrieved from the - "id" attribute of the "alarm" attribute in the AlarmNotification or - AlarmClearedNotification. It can also be retrieved from the "id" - attribute of the applicable array element in the payload body of the - response to a GET request to the "Alarms" resource. - in: path - type: string - required: true - get: - description: | - The client can use this method to read an individual alarm. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. Reference: IETF - RFC 7231 - in: header - required: true - type: string - - name: Content-Type - description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - responses: - '200': - description: > - Information about an individual alarm was read successfully. The - response body shall contain a representation of the individual - alarm. - headers: - Content-Type: - description: > - The MIME type of the body of the request. Reference: IETF RFC - 7231 - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - The alarm data type encapsulates information about an alarm. - type: object - required: - - id - - managedObjectId - - rootCauseFaultyResource - - alarmRaisedTime - - ackState - - perceivedSeverity - - eventTime - - eventType - - probableCause - - isRootCause - - _links - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - managedObjectId: - description: | - An identifier with the intention of being globally unique. - type: string - rootCauseFaultyResource: - description: > - This type represents the faulty virtual resources that have a - negative impact on a VNF. - type: object - required: - - faultyResource - - faultyResourceType - properties: - faultyResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. Information about the resource is available from - the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other resource - provider. It is expected to be unique within the VIM - instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or the - resource provider. - type: string - faultyResourceType: - description: > - The enumeration FaultyResourceType represents those types - of faulty resource. - type: string - enum: - - COMPUTE - - STORAGE - - NETWORK - alarmRaisedTime: - description: > - Date-time stamp. Representation: String formatted according - to IETF RFC 3339. - type: string - format: date-time - alarmChangedTime: - description: > - Date-time stamp. Representation: String formatted according - to IETF RFC 3339. - type: string - format: date-time - alarmClearedTime: - description: > - Date-time stamp. Representation: String formatted according - to IETF RFC 3339. - type: string - format: date-time - ackState: - description: > - Acknowledgement state of the alarm. Permitted values: * - UNACKNOWLEDGED * ACKNOWLEDGED. - type: string - enum: - - UNACKNOWLEDGED - - ACKNOWLEDGED - perceivedSeverity: - type: string - eventTime: - description: > - Date-time stamp. Representation: String formatted according - to IETF RFC 3339. - type: string - format: date-time - eventType: - type: string - faultType: - description: | - Additional information to clarify the type of the fault. - type: string - probableCause: - description: | - Information about the probable cause of the fault. - type: string - isRootCause: - description: > - Attribute indicating if this fault is the root for other - correlated alarms. If TRUE, then the alarms listed in the - attribute CorrelatedAlarmId are caused by this fault. - type: boolean - correlatedAlarmIds: - description: | - List of identifiers of other alarms correlated to this fault. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - faultDetails: - description: | - Provides additional information about the fault. - type: array - items: - type: string - _links: - description: | - Links for this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - objectInstance: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - patch: - description: | - This method modifies an individual alarm resource. - parameters: - - name: AlarmModifications - description: The parameter for the alarm modification - in: body - required: true - schema: - description: > - This type represents attribute modifications for an "Individual - alarm" resource, i.e. modifications to a resource representation - based on the "Alarm" data type. The attributes of "Alarm" that can - be modified are included in the "AlarmModifications" data type. - type: object - required: - - ackState - properties: - ackState: - description: > - New value of the "ackState" attribute in "Alarm". Permitted - values: * ACKNOWLEDGED - type: string - enum: - - ACKNOWLEDGED - - name: Accept - description: > - Content-Types that are acceptable for the response. Reference: IETF - RFC 7231 - in: header - required: true - type: string - - name: Content-Type - description: > - The Content-Type header shall be set to - "application/mergepatch+json" Reference: IETF RFC 7396 - in: header - required: true - type: string - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - responses: - '200': - description: > - OK - - The request was accepted and completed. The response body shall - contain attribute modifications for an ‘Individual alarm’ resource. - headers: - Content-Type: - description: > - The MIME type of the body of the request. Reference: IETF RFC - 7231 - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents attribute modifications for an "Individual - alarm" resource, i.e. modifications to a resource representation - based on the "Alarm" data type. The attributes of "Alarm" that can - be modified are included in the "AlarmModifications" data type. - type: object - required: - - ackState - properties: - ackState: - description: > - New value of the "ackState" attribute in "Alarm". Permitted - values: * ACKNOWLEDGED - type: string - enum: - - ACKNOWLEDGED - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the "Individual alarm" resource. Typically, this is due - to the fact that the alarm is already in the state that is requested - to be set (such as trying to acknowledge an already-acknowledged - alarm). The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '412': - description: > - Precondition Failed - - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/alarms/{alarmId}/escalate': - post: - description: > - The POST method enables the consumer to escalate the perceived severity - of an alarm that is represented by an ndividual alarm resource. - parameters: - - name: PerceivedSeverityRequest - description: The proposed "escalated perceived severity" value - in: body - schema: - type: string - responses: - '200': - description: > - OK - - The VNFM has received the proposed "escalated perceived severity" - value successfully. The response body shall be empty. - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '412': - description: > - Precondition Failed - - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - /alarms/subscriptions: - post: - description: | - The POST method creates a new subscription. - parameters: - - name: FmSubscriptionRequest - description: The VNF creation parameters - in: body - required: true - schema: - description: > - This type represents a subscription request related to - notifications about VNF faults. - type: object - required: - - callbackUri - properties: - filter: - description: > - This type represents a subscription filter related to - notifications about VNF faults. At a particular nesting level - in the filter structure, the following applies: All attributes - shall match in order for the filter to match (logical "and" - between different filter attributes). If an attribute is an - array, the attribute shall match if at least one of the values - in the array matches (logical "or" between the values of one - filter attribute). - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match - VNF instances. - type: object - properties: - vnfdIds: - description: > - If present, match VNF instances that were created - based on a VNFD identified by one of the vnfdId values - listed in this attribute. The attributes "vnfdIds" and - "vnfProductsFromProviders" are alternatives to - reference to VNF instances that are based on certain - VNFDs in a filter. They should not be used both in the - same filter instance, but one alternative should be - chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF - products from certain providers. The attributes - "vnfdIds" and "vnfProductsFromProviders" are - alternatives to reference to VNF instances that are - based on certain VNFDs in a filter. They should not be - used both in the same filter instance, but one - alternative should be chosen. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: | - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to - VNF products with certain product names, from - one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: | - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that - belong to VNF products with certain - versions and a certain product name, from - one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: | - A version. - type: string - vnfdVersions: - description: > - If present, match VNF instances that - belong to VNF products with certain VNFD - versions, a certain software version and - a certain product name, from one - particular provider. - type: array - items: - description: | - A version. - type: string - vnfInstanceIds: - description: > - If present, match VNF instances with an instance - identifier listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance - Name listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - type: string - notificationTypes: - description: > - Match particular notification types. Permitted values: * - AlarmNotification * AlarmClearedNotification * - AlarmListRebuiltNotification The permitted values of the - "notificationTypes" attribute are spelled exactly as the - names of the notification types to facilitate automated - code generation systems. - type: array - items: - type: string - enum: - - AlarmNotification - - AlarmClearedNotification - - AlarmListRebuiltNotification - faultyResourceTypes: - description: > - Match VNF alarms with a faulty resource type listed in - this attribute. - type: array - items: - description: > - The enumeration FaultyResourceType represents those - types of faulty resource. - type: string - enum: - - COMPUTE - - STORAGE - - NETWORK - perceivedSeverities: - description: > - Match VNF alarms with a perceived severity listed in this - attribute. - type: array - items: - description: > - Indicates the relative level of urgency for operator - attention. * CRITICAL: The Critical severity level - indicates that a service - affecting condition has occurred and an immediate corrective action - is required. Such a severity can be reported, for example, when a - managed object becomes totally out of service and its capability needs - to be restored (ITU-T Recommendation X.733). - * MAJOR: The Major severity level indicates that a - service affecting - condition has developed and an urgent corrective action is required. - Such a severity can be reported, for example, when there is a severe - degradation in the capability of the managed object and its full - capability needs to be restored (ITU-T Recommendation X.733). - * MINOR: The Minor severity level indicates the - existence of a - non-service affecting fault condition and that corrective action - should be taken in order to prevent a more serious (for example, - service affecting) fault. Such a severity can be reported, for - example, when the detected alarm condition is not currently degrading - the capacity of the managed object (ITU-T Recommendation X.733). - * WARNING: The Warning severity level indicates the - detection of a - potential or impending service affecting fault, before any significant - effects have been felt. Action should be taken to further diagnose (if - necessary) and correct the problem in order to prevent it from - becoming a more serious service affecting fault (ITU-T Recommendation - X.733). - * INDETERMINATE: The Indeterminate severity level - indicates that the - severity level cannot be determined (ITU-T Recommendation X.733). - * CLEARED: The Cleared severity level indicates the - clearing of one or - more previously reported alarms. This alarm clears all alarms for this - managed object that have the same Alarm type, Probable cause and - Specific problems (if given) (ITU-T Recommendation X.733). - type: string - enum: - - CRITICAL - - MAJOR - - MINOR - - WARNING - - INDETERMINATE - - CLEARED - eventTypes: - description: > - Match VNF alarms with an event type listed in this - attribute. - type: array - items: - description: > - The enumeration EventType represents those types of - events that trigger an alarm. * COMMUNICATIONS_ALARM: An - alarm of this type is associated with the - procedure and/or process required conveying information from one point - to another (ITU-T Recommendation X.733). - * PROCESSING_ERROR_ALARM: An alarm of this type is - associated with a - software or processing fault (ITU-T Recommendation X.733). - * ENVIRONMENTAL_ALARM: An alarm of this type is - associated with a - condition related to an enclosure in which the equipment resides - (ITU-T Recommendation X.733). - * QOS_ALARM: An alarm of this type is associated with - degradation in the - quality of a service (ITU-T Recommendation X.733). - * EQUIPMENT_ALARM: An alarm of this type is associated - with an equipment - fault (ITU-T Recommendation X.733). - type: string - enum: - - COMMUNICATIONS_ALARM - - PROCESSING_ERROR_ALARM - - ENVIRONMENTAL_ALARM - - QOS_ALARM - - EQUIPMENT_ALARM - probableCauses: - description: > - Match VNF alarms with a probable cause listed in this - attribute. - type: array - items: - type: string - callbackUri: - description: | - The URI of the endpoint to send the notification to. - type: string - format: url - authentication: - type: object - required: - - authType - properties: - authType: - description: > - Defines the types of Authentication / Authorization which - the API consumer is willing to accept when receiving a - notification. Permitted values: * BASIC: In every HTTP - request to the notification endpoint, use - HTTP Basic authentication with the client credentials. - * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the - notification endpoint, use an OAuth 2.0 Bearer token, obtained - using the client credentials grant type. - * TLS_CERT: Every HTTP request to the notification - endpoint is sent - over a mutually authenticated TLS session, i.e. not only the - server is authenticated, but also the client is authenticated - during the TLS tunnel setup. - type: array - items: - type: string - enum: - - BASIC - - OAUTH2_CLIENT_CREDENTIALS - - TLS_CERT - paramsBasic: - description: > - Parameters for authentication/authorization using BASIC. - Shall be present if authType is "BASIC" and the contained - information has not been provisioned out of band. Shall be - absent otherwise. - type: object - properties: - userName: - description: > - Username to be used in HTTP Basic authentication. - Shall be present if it has not been provisioned out of - band. - type: string - password: - description: > - Password to be used in HTTP Basic authentication. - Shall be present if it has not been provisioned out of - band. - type: string - paramsOauth2ClientCredentials: - description: > - Parameters for authentication/authorization using - OAUTH2_CLIENT_CREDENTIALS. Shall be present if authType is - "OAUTH2_CLIENT_CREDENTIALS" and the contained information - has not been provisioned out of band. Shall be absent - otherwise. - type: object - properties: - clientId: - description: > - Client identifier to be used in the access token - request of the OAuth 2.0 client credentials grant - type. Shall be present if it has not been provisioned - out of band. The clientId and clientPassword passed in - a subscription shall not be the same as the clientId - and clientPassword that are used to obtain - authorization for API requests. Client credentials may - differ between subscriptions. The value of - clientPassword should be generated by a random - process. - type: string - clientPassword: - description: > - Client password to be used in the access token request - of the OAuth 2.0 client credentials grant type. Shall - be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a - subscription shall not be the same as the clientId and - clientPassword that are used to obtain authorization - for API requests. Client credentials may differ - between subscriptions. The value of clientPassword - should be generated by a random process. - type: string - tokenEndpoint: - description: | - String formatted according to IETF RFC 3986. - type: string - - name: Accept - description: > - Content-Types that are acceptable for the response. Reference: IETF - RFC 7231 - in: header - required: true - type: string - - name: Content-Type - description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - responses: - '201': - description: > - Created - - The subscription was created successfully. The response body shall - contain a representation of the created subscription resource. The - HTTP response shall include a "Location:" HTTP header that points to - the created subscription resource. - headers: - Content-Type: - description: > - The MIME type of the body of the request. Reference: IETF RFC - 7231 - type: string - maximum: 1 - minimum: 1 - Location: - description: | - The resource URI of the created subscription resource. - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a subscription related to notifications about - VNF faults. - type: object - required: - - id - - callbackUri - - _links - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - filter: - description: > - This type represents a subscription filter related to - notifications about VNF faults. At a particular nesting level - in the filter structure, the following applies: All attributes - shall match in order for the filter to match (logical "and" - between different filter attributes). If an attribute is an - array, the attribute shall match if at least one of the values - in the array matches (logical "or" between the values of one - filter attribute). - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match - VNF instances. - type: object - properties: - vnfdIds: - description: > - If present, match VNF instances that were created - based on a VNFD identified by one of the vnfdId values - listed in this attribute. The attributes "vnfdIds" and - "vnfProductsFromProviders" are alternatives to - reference to VNF instances that are based on certain - VNFDs in a filter. They should not be used both in the - same filter instance, but one alternative should be - chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF - products from certain providers. The attributes - "vnfdIds" and "vnfProductsFromProviders" are - alternatives to reference to VNF instances that are - based on certain VNFDs in a filter. They should not be - used both in the same filter instance, but one - alternative should be chosen. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: | - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to - VNF products with certain product names, from - one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: | - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that - belong to VNF products with certain - versions and a certain product name, from - one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: | - A version. - type: string - vnfdVersions: - description: > - If present, match VNF instances that - belong to VNF products with certain VNFD - versions, a certain software version and - a certain product name, from one - particular provider. - type: array - items: - description: | - A version. - type: string - vnfInstanceIds: - description: > - If present, match VNF instances with an instance - identifier listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance - Name listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - type: string - notificationTypes: - description: > - Match particular notification types. Permitted values: * - AlarmNotification * AlarmClearedNotification * - AlarmListRebuiltNotification The permitted values of the - "notificationTypes" attribute are spelled exactly as the - names of the notification types to facilitate automated - code generation systems. - type: array - items: - type: string - enum: - - AlarmNotification - - AlarmClearedNotification - - AlarmListRebuiltNotification - faultyResourceTypes: - description: > - Match VNF alarms with a faulty resource type listed in - this attribute. - type: array - items: - description: > - The enumeration FaultyResourceType represents those - types of faulty resource. - type: string - enum: - - COMPUTE - - STORAGE - - NETWORK - perceivedSeverities: - description: > - Match VNF alarms with a perceived severity listed in this - attribute. - type: array - items: - description: > - Indicates the relative level of urgency for operator - attention. * CRITICAL: The Critical severity level - indicates that a service - affecting condition has occurred and an immediate corrective action - is required. Such a severity can be reported, for example, when a - managed object becomes totally out of service and its capability needs - to be restored (ITU-T Recommendation X.733). - * MAJOR: The Major severity level indicates that a - service affecting - condition has developed and an urgent corrective action is required. - Such a severity can be reported, for example, when there is a severe - degradation in the capability of the managed object and its full - capability needs to be restored (ITU-T Recommendation X.733). - * MINOR: The Minor severity level indicates the - existence of a - non-service affecting fault condition and that corrective action - should be taken in order to prevent a more serious (for example, - service affecting) fault. Such a severity can be reported, for - example, when the detected alarm condition is not currently degrading - the capacity of the managed object (ITU-T Recommendation X.733). - * WARNING: The Warning severity level indicates the - detection of a - potential or impending service affecting fault, before any significant - effects have been felt. Action should be taken to further diagnose (if - necessary) and correct the problem in order to prevent it from - becoming a more serious service affecting fault (ITU-T Recommendation - X.733). - * INDETERMINATE: The Indeterminate severity level - indicates that the - severity level cannot be determined (ITU-T Recommendation X.733). - * CLEARED: The Cleared severity level indicates the - clearing of one or - more previously reported alarms. This alarm clears all alarms for this - managed object that have the same Alarm type, Probable cause and - Specific problems (if given) (ITU-T Recommendation X.733). - type: string - enum: - - CRITICAL - - MAJOR - - MINOR - - WARNING - - INDETERMINATE - - CLEARED - eventTypes: - description: > - Match VNF alarms with an event type listed in this - attribute. - type: array - items: - description: > - The enumeration EventType represents those types of - events that trigger an alarm. * COMMUNICATIONS_ALARM: An - alarm of this type is associated with the - procedure and/or process required conveying information from one point - to another (ITU-T Recommendation X.733). - * PROCESSING_ERROR_ALARM: An alarm of this type is - associated with a - software or processing fault (ITU-T Recommendation X.733). - * ENVIRONMENTAL_ALARM: An alarm of this type is - associated with a - condition related to an enclosure in which the equipment resides - (ITU-T Recommendation X.733). - * QOS_ALARM: An alarm of this type is associated with - degradation in the - quality of a service (ITU-T Recommendation X.733). - * EQUIPMENT_ALARM: An alarm of this type is associated - with an equipment - fault (ITU-T Recommendation X.733). - type: string - enum: - - COMMUNICATIONS_ALARM - - PROCESSING_ERROR_ALARM - - ENVIRONMENTAL_ALARM - - QOS_ALARM - - EQUIPMENT_ALARM - probableCauses: - description: > - Match VNF alarms with a probable cause listed in this - attribute. - type: array - items: - type: string - callbackUri: - description: | - The URI of the endpoint to send the notification to. - type: string - format: url - _links: - description: | - Links for this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '303': - description: > - See Other - - A subscription with the same callbackURI and the same filter already - exists and the policy of the VNFM is to not create redundant - subscriptions. The HTTP response shall include a "Location" HTTP - header that contains the resource URI of the existing subscription - resource. The response body shall be empty. - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - get: - description: > - The client can use this method to retrieve the list of active - subscriptions for VNF alarms subscribed by the client. It can be used - e.g. for resynchronization after error situations. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. Reference: IETF - RFC 7231 - in: header - required: true - type: string - - name: Content-Type - description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - responses: - '200': - description: > - OK - - The list of subscriptions was queried successfully. The response - body shall contain the representations of all active subscriptions - of the functional block that invokes the method. - headers: - Content-Type: - description: > - The MIME type of the body of the request. Reference: IETF RFC - 7231 - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a subscription related to notifications about - VNF faults. - type: object - required: - - id - - callbackUri - - _links - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - filter: - description: > - This type represents a subscription filter related to - notifications about VNF faults. At a particular nesting level - in the filter structure, the following applies: All attributes - shall match in order for the filter to match (logical "and" - between different filter attributes). If an attribute is an - array, the attribute shall match if at least one of the values - in the array matches (logical "or" between the values of one - filter attribute). - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match - VNF instances. - type: object - properties: - vnfdIds: - description: > - If present, match VNF instances that were created - based on a VNFD identified by one of the vnfdId values - listed in this attribute. The attributes "vnfdIds" and - "vnfProductsFromProviders" are alternatives to - reference to VNF instances that are based on certain - VNFDs in a filter. They should not be used both in the - same filter instance, but one alternative should be - chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF - products from certain providers. The attributes - "vnfdIds" and "vnfProductsFromProviders" are - alternatives to reference to VNF instances that are - based on certain VNFDs in a filter. They should not be - used both in the same filter instance, but one - alternative should be chosen. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: | - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to - VNF products with certain product names, from - one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: | - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that - belong to VNF products with certain - versions and a certain product name, from - one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: | - A version. - type: string - vnfdVersions: - description: > - If present, match VNF instances that - belong to VNF products with certain VNFD - versions, a certain software version and - a certain product name, from one - particular provider. - type: array - items: - description: | - A version. - type: string - vnfInstanceIds: - description: > - If present, match VNF instances with an instance - identifier listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance - Name listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - type: string - notificationTypes: - description: > - Match particular notification types. Permitted values: * - AlarmNotification * AlarmClearedNotification * - AlarmListRebuiltNotification The permitted values of the - "notificationTypes" attribute are spelled exactly as the - names of the notification types to facilitate automated - code generation systems. - type: array - items: - type: string - enum: - - AlarmNotification - - AlarmClearedNotification - - AlarmListRebuiltNotification - faultyResourceTypes: - description: > - Match VNF alarms with a faulty resource type listed in - this attribute. - type: array - items: - description: > - The enumeration FaultyResourceType represents those - types of faulty resource. - type: string - enum: - - COMPUTE - - STORAGE - - NETWORK - perceivedSeverities: - description: > - Match VNF alarms with a perceived severity listed in this - attribute. - type: array - items: - description: > - Indicates the relative level of urgency for operator - attention. * CRITICAL: The Critical severity level - indicates that a service - affecting condition has occurred and an immediate corrective action - is required. Such a severity can be reported, for example, when a - managed object becomes totally out of service and its capability needs - to be restored (ITU-T Recommendation X.733). - * MAJOR: The Major severity level indicates that a - service affecting - condition has developed and an urgent corrective action is required. - Such a severity can be reported, for example, when there is a severe - degradation in the capability of the managed object and its full - capability needs to be restored (ITU-T Recommendation X.733). - * MINOR: The Minor severity level indicates the - existence of a - non-service affecting fault condition and that corrective action - should be taken in order to prevent a more serious (for example, - service affecting) fault. Such a severity can be reported, for - example, when the detected alarm condition is not currently degrading - the capacity of the managed object (ITU-T Recommendation X.733). - * WARNING: The Warning severity level indicates the - detection of a - potential or impending service affecting fault, before any significant - effects have been felt. Action should be taken to further diagnose (if - necessary) and correct the problem in order to prevent it from - becoming a more serious service affecting fault (ITU-T Recommendation - X.733). - * INDETERMINATE: The Indeterminate severity level - indicates that the - severity level cannot be determined (ITU-T Recommendation X.733). - * CLEARED: The Cleared severity level indicates the - clearing of one or - more previously reported alarms. This alarm clears all alarms for this - managed object that have the same Alarm type, Probable cause and - Specific problems (if given) (ITU-T Recommendation X.733). - type: string - enum: - - CRITICAL - - MAJOR - - MINOR - - WARNING - - INDETERMINATE - - CLEARED - eventTypes: - description: > - Match VNF alarms with an event type listed in this - attribute. - type: array - items: - description: > - The enumeration EventType represents those types of - events that trigger an alarm. * COMMUNICATIONS_ALARM: An - alarm of this type is associated with the - procedure and/or process required conveying information from one point - to another (ITU-T Recommendation X.733). - * PROCESSING_ERROR_ALARM: An alarm of this type is - associated with a - software or processing fault (ITU-T Recommendation X.733). - * ENVIRONMENTAL_ALARM: An alarm of this type is - associated with a - condition related to an enclosure in which the equipment resides - (ITU-T Recommendation X.733). - * QOS_ALARM: An alarm of this type is associated with - degradation in the - quality of a service (ITU-T Recommendation X.733). - * EQUIPMENT_ALARM: An alarm of this type is associated - with an equipment - fault (ITU-T Recommendation X.733). - type: string - enum: - - COMMUNICATIONS_ALARM - - PROCESSING_ERROR_ALARM - - ENVIRONMENTAL_ALARM - - QOS_ALARM - - EQUIPMENT_ALARM - probableCauses: - description: > - Match VNF alarms with a probable cause listed in this - attribute. - type: array - items: - type: string - callbackUri: - description: | - The URI of the endpoint to send the notification to. - type: string - format: url - _links: - description: | - Links for this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - Invalid attribute-based filtering parameters or Invalid attribute - selector. It fhe request is malformed or syntactically incorrect - (e.g. if the request URI contains incorrect query parameters or a - syntactically incorrect payload body), 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 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. 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '412': - description: > - Precondition Failed - - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/subscriptions/{subscriptionId}': - parameters: - - name: subscriptionId - description: > - Identifier of this subscription. This identifier can be retrieved from - the resource referenced by the "Location" HTTP header in the response - to a POST request creating a new subscription resource. It can also be - retrieved from the "id" attribute in the payload body of that - response. - in: path - type: string - required: true - get: - description: > - The client can use this method for reading an individual subscription - for VNF alarms subscribed by the client. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. Reference: IETF - RFC 7231 - in: header - required: true - type: string - - name: Content-Type - description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - responses: - '200': - description: > - OK - - The operation has completed successfully. The response body shall - contain a representation of the subscription resource. - headers: - Content-Type: - description: > - The MIME type of the body of the request. Reference: IETF RFC - 7231 - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a subscription related to notifications about - VNF faults. - type: object - required: - - id - - callbackUri - - _links - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - filter: - description: > - This type represents a subscription filter related to - notifications about VNF faults. At a particular nesting level - in the filter structure, the following applies: All attributes - shall match in order for the filter to match (logical "and" - between different filter attributes). If an attribute is an - array, the attribute shall match if at least one of the values - in the array matches (logical "or" between the values of one - filter attribute). - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match - VNF instances. - type: object - properties: - vnfdIds: - description: > - If present, match VNF instances that were created - based on a VNFD identified by one of the vnfdId values - listed in this attribute. The attributes "vnfdIds" and - "vnfProductsFromProviders" are alternatives to - reference to VNF instances that are based on certain - VNFDs in a filter. They should not be used both in the - same filter instance, but one alternative should be - chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF - products from certain providers. The attributes - "vnfdIds" and "vnfProductsFromProviders" are - alternatives to reference to VNF instances that are - based on certain VNFDs in a filter. They should not be - used both in the same filter instance, but one - alternative should be chosen. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: | - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to - VNF products with certain product names, from - one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: | - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that - belong to VNF products with certain - versions and a certain product name, from - one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: | - A version. - type: string - vnfdVersions: - description: > - If present, match VNF instances that - belong to VNF products with certain VNFD - versions, a certain software version and - a certain product name, from one - particular provider. - type: array - items: - description: | - A version. - type: string - vnfInstanceIds: - description: > - If present, match VNF instances with an instance - identifier listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance - Name listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - type: string - notificationTypes: - description: > - Match particular notification types. Permitted values: * - AlarmNotification * AlarmClearedNotification * - AlarmListRebuiltNotification The permitted values of the - "notificationTypes" attribute are spelled exactly as the - names of the notification types to facilitate automated - code generation systems. - type: array - items: - type: string - enum: - - AlarmNotification - - AlarmClearedNotification - - AlarmListRebuiltNotification - faultyResourceTypes: - description: > - Match VNF alarms with a faulty resource type listed in - this attribute. - type: array - items: - description: > - The enumeration FaultyResourceType represents those - types of faulty resource. - type: string - enum: - - COMPUTE - - STORAGE - - NETWORK - perceivedSeverities: - description: > - Match VNF alarms with a perceived severity listed in this - attribute. - type: array - items: - description: > - Indicates the relative level of urgency for operator - attention. * CRITICAL: The Critical severity level - indicates that a service - affecting condition has occurred and an immediate corrective action - is required. Such a severity can be reported, for example, when a - managed object becomes totally out of service and its capability needs - to be restored (ITU-T Recommendation X.733). - * MAJOR: The Major severity level indicates that a - service affecting - condition has developed and an urgent corrective action is required. - Such a severity can be reported, for example, when there is a severe - degradation in the capability of the managed object and its full - capability needs to be restored (ITU-T Recommendation X.733). - * MINOR: The Minor severity level indicates the - existence of a - non-service affecting fault condition and that corrective action - should be taken in order to prevent a more serious (for example, - service affecting) fault. Such a severity can be reported, for - example, when the detected alarm condition is not currently degrading - the capacity of the managed object (ITU-T Recommendation X.733). - * WARNING: The Warning severity level indicates the - detection of a - potential or impending service affecting fault, before any significant - effects have been felt. Action should be taken to further diagnose (if - necessary) and correct the problem in order to prevent it from - becoming a more serious service affecting fault (ITU-T Recommendation - X.733). - * INDETERMINATE: The Indeterminate severity level - indicates that the - severity level cannot be determined (ITU-T Recommendation X.733). - * CLEARED: The Cleared severity level indicates the - clearing of one or - more previously reported alarms. This alarm clears all alarms for this - managed object that have the same Alarm type, Probable cause and - Specific problems (if given) (ITU-T Recommendation X.733). - type: string - enum: - - CRITICAL - - MAJOR - - MINOR - - WARNING - - INDETERMINATE - - CLEARED - eventTypes: - description: > - Match VNF alarms with an event type listed in this - attribute. - type: array - items: - description: > - The enumeration EventType represents those types of - events that trigger an alarm. * COMMUNICATIONS_ALARM: An - alarm of this type is associated with the - procedure and/or process required conveying information from one point - to another (ITU-T Recommendation X.733). - * PROCESSING_ERROR_ALARM: An alarm of this type is - associated with a - software or processing fault (ITU-T Recommendation X.733). - * ENVIRONMENTAL_ALARM: An alarm of this type is - associated with a - condition related to an enclosure in which the equipment resides - (ITU-T Recommendation X.733). - * QOS_ALARM: An alarm of this type is associated with - degradation in the - quality of a service (ITU-T Recommendation X.733). - * EQUIPMENT_ALARM: An alarm of this type is associated - with an equipment - fault (ITU-T Recommendation X.733). - type: string - enum: - - COMMUNICATIONS_ALARM - - PROCESSING_ERROR_ALARM - - ENVIRONMENTAL_ALARM - - QOS_ALARM - - EQUIPMENT_ALARM - probableCauses: - description: > - Match VNF alarms with a probable cause listed in this - attribute. - type: array - items: - type: string - callbackUri: - description: | - The URI of the endpoint to send the notification to. - type: string - format: url - _links: - description: | - Links for this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - delete: - description: | - This method terminates an individual subscription. - parameters: - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - responses: - '204': - description: > - No Content - - The subscription resource was deleted successfully. The response - body shall be empty. - headers: - Content-Type: - description: > - The MIME type of the body of the request. Reference: IETF RFC - 7231 - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - diff --git a/SOL002/VNFFaultManagement-API/Subscriptions.robot b/SOL002/VNFFaultManagement-API/Subscriptions.robot index 6da4fc3319a8ec3277dbeed4bc7605bee7c54825..1977027d5e4e68508e4af21a279a518602ace4a7 100644 --- a/SOL002/VNFFaultManagement-API/Subscriptions.robot +++ b/SOL002/VNFFaultManagement-API/Subscriptions.robot @@ -1,6 +1,6 @@ *** Settings *** Resource environment/variables.txt -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -11,20 +11,21 @@ Create a new subscription ... Test title: Create a new subscription ... Test objective: The objective is to create a new subscription. ... Pre-conditions: no subscription with the same filter and callbackUri exists - ... Reference: clause 7.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: - ... Post-Conditions: subscription is created + ... Post-Conditions: Resource created successfully Post Create subscription Check HTTP Response Status Code Is 201 Check HTTP Response Body Json Schema Is FmSubscription + Check resource existence Create a new Subscription - DUPLICATION [Documentation] Test ID: 6.3.4.4.2 ... Test title: Create a new Subscription - DUPLICATION ... Test objective: The objective is to create a duplicate subscription. ... Pre-conditions: subscription with the same filter and callbackUri exists - ... Reference: clause 7.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: the VNFM does not allow creation of a subscription resource if another subscription resource with the same filter and callbackUri already exists ... Post-Conditions: duplicated subscription is created @@ -37,7 +38,7 @@ Create a new Subscription - NO-DUPLICATION ... Test title: Create a new Subscription - NO-DUPLICATION ... Test objective: The objective is to create a subscription in case of not allowed DUPLICATION. ... Pre-conditions: subscription with the same filter and callbackUri exists - ... Reference: clause 7.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: the VNFM does not allow creation of a duplicate subscription resource ... Post-Conditions: duplicated subscription is not created @@ -45,11 +46,11 @@ Create a new Subscription - NO-DUPLICATION Check HTTP Response Status Code Is 303 GET Subscriptions - [Documentation] Test ID: 6.3.4.4.5 + [Documentation] Test ID: 6.3.4.4.4 ... Test title: GET Subscriptions ... Test objective: The objective is to retrieve the list of active subscriptions ... Pre-conditions: - ... Reference: clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: subscription is not deleted @@ -58,11 +59,11 @@ GET Subscriptions Check HTTP Response Body Json Schema Is FmSubscriptions GET Subscription - Filter - [Documentation] Test ID: 6.3.4.4.6 + [Documentation] Test ID: 6.3.4.4.5 ... Test title: GET Subscription - Filter ... Test objective: The objective is to retrieve the list of active subscriptions with filter ... Pre-conditions: - ... Reference: clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -71,11 +72,11 @@ GET Subscription - Filter Check HTTP Response Body Json Schema Is FmSubscriptions GET subscriptions - Bad Request Invalid attribute-based filtering parameters - [Documentation] Test ID: 6.3.4.4.7 + [Documentation] Test ID: 6.3.4.4.6 ... Test title: GET subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to retrieve the list of active subscriptions with Invalid attribute-based filtering parameters ... Pre-conditions: - ... Reference: clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -84,11 +85,11 @@ GET subscriptions - Bad Request Invalid attribute-based filtering parameters Check HTTP Response Body Json Schema Is ProblemDetails GET subscriptions with "all_fields" attribute selector - [Documentation] Test ID: 6.3.4.4.8 + [Documentation] Test ID: 6.3.4.4.7 ... Test title: GET subscriptions with "all_fields" attribute selector ... Test objective: The objective is to retrieve the list of active subscriptions with attribute selector ... Pre-conditions: - ... Reference: clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -97,11 +98,11 @@ GET subscriptions with "all_fields" attribute selector Check HTTP Response Body Json Schema Is FmSubscriptions GET subscriptions with "exclude_default" attribute selector - [Documentation] Test ID: 6.3.4.4.9 + [Documentation] Test ID: 6.3.4.4.8 ... Test title: GET subscriptions with "exclude_default" attribute selector ... Test objective: The objective is to retrieve the list of active subscriptions with attribute selector ... Pre-conditions: - ... Reference: clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -110,11 +111,11 @@ GET subscriptions with "exclude_default" attribute selector Check HTTP Response Body Json Schema Is FmSubscriptions GET subscriptions with "fields" attribute selector - [Documentation] Test ID: 6.3.4.4.10 + [Documentation] Test ID: 6.3.4.4.9 ... Test title: GET subscriptions with "fields" attribute selector ... Test objective: The objective is to retrieve the list of active subscriptions with attribute selector ... Pre-conditions: - ... Reference: clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -123,11 +124,11 @@ GET subscriptions with "fields" attribute selector Check HTTP Response Body Json Schema Is FmSubscriptions GET subscriptions with "exclude_fields" attribute selector - [Documentation] Test ID: 6.3.4.4.11 + [Documentation] Test ID: 6.3.4.4.10 ... Test title: GET subscriptions with "exclude_fields" attribute selector ... Test objective: The objective is to retrieve the list of active subscriptions with attribute selector ... Pre-conditions: - ... Reference: clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -138,11 +139,11 @@ GET subscriptions with "exclude_fields" attribute selector PUT subscriptions - Method not implemented - [Documentation] Test ID: 6.3.4.4.8 + [Documentation] Test ID: 6.3.4.4.11 ... Test title: PUT subscriptions - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.5.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -150,11 +151,11 @@ PUT subscriptions - Method not implemented Check HTTP Response Status Code Is 405 PATCH subscriptions - Method not implemented - [Documentation] Test ID: 6.3.4.4.9 + [Documentation] Test ID: 6.3.4.4.12 ... Test title: PUT subscriptions - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.5.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: @@ -162,17 +163,128 @@ PATCH subscriptions - Method not implemented Check HTTP Response Status Code Is 405 DELETE subscriptions - Method not implemented - [Documentation] Test ID: 6.3.4.4.10 + [Documentation] Test ID: 6.3.4.4.13 ... Test title: DELETE subscriptions - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: - ... Reference: clause 7.4.5.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 7.4.5.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: ... Post-Conditions: subscription not deleted DELETE subscriptions Check HTTP Response Status Code Is 405 + +GET Subscriptions to get Paged Response + [Documentation] Test ID: 6.3.4.4.14 + ... Test title: GET Subscriptions to get Paged Response + ... Test objective: The objective is to retrieve the list of active subscriptions to get paged response + ... Pre-conditions: + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: subscription is not deleted + Get subscriptions + Check HTTP Response Status Code Is 200 + Check LINK in Header + +GET subscriptions - Bad Request Response too Big + [Documentation] Test ID: 6.3.4.4.15 + ... Test title: GET subscriptions - Bad Request Response too Big + ... Test objective: The objective is to test that GET method fail retrieving list of active subscription because Response is too big, and perform the JSON schema validation of the failed operation HTTP response + ... Pre-conditions: + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + Get subscriptions - invalid filter + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails +GET Subscription with attribute-based filter "id" + [Documentation] Test ID: 6.3.4.4.16 + ... Test title: GET Subscription with attribute-based filter "id" + ... Test objective: The objective is to retrieve the list of active subscriptions with filter "id" + ... Pre-conditions: + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + Get subscriptions with filter "id" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is FmSubscription + Check PostCondition HTTP Response Body Subscription Matches the requested attribute-based filter "id" + + +Get subscriptions with filter "filter.notificationTypes" + [Documentation] Test ID: 6.3.4.4.17 + ... Test title: GET Subscription with attribute-based filter "filter.notificationTypes" + ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.notificationTypes" + ... Pre-conditions: + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + Get subscriptions with filter "filter_notificationTypes" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is FmSubscriptions + Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_notificationTypes" + +Get subscriptions with filter "filter.faultyResourceTypes" + [Documentation] Test ID: 6.3.4.4.18 + ... Test title: GET Subscription with attribute-based filter "filter.faultyResourceTypes" + ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.faultyResourceTypes" + ... Pre-conditions: + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + Get subscriptions with filter "filter_faultyResourceTypes" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is FmSubscriptions + Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_faultyResourceTypes" + +Get subscriptions with filter "filter.perceivedSeverities" + [Documentation] Test ID: 6.3.4.4.19 + ... Test title: GET Subscription with attribute-based filter "filter.perceivedSeverities" + ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.perceivedSeverities" + ... Pre-conditions: + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + Get subscriptions with filter "filter_perceivedSeverities" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is FmSubscriptions + Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_perceivedSeverities" + +Get subscriptions with filter "filter.eventTypes" + [Documentation] Test ID: 6.3.4.4.20 + ... Test title: GET Subscription with attribute-based filter "filter.eventTypes" + ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.eventTypes" + ... Pre-conditions: + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + Get subscriptions with filter "filter_eventTypes" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is FmSubscriptions + Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_eventTypes" + +Get subscriptions with filter "filter.probableCauses" + [Documentation] Test ID: 6.3.4.4.21 + ... Test title: GET Subscription with attribute-based filter "filter.probableCauses" + ... Test objective: The objective is to retrieve the list of active subscriptions with filter "filter.probableCauses" + ... Pre-conditions: + ... Reference: Clause 7.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: + ... Post-Conditions: + Get subscriptions with filter "filter_probableCauses" + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is FmSubscriptions + Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_probableCauses" + *** Keywords *** Post Create subscription Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions @@ -182,7 +294,7 @@ Post Create subscription ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Create subscription - DUPLICATION Log Trying to create a subscription with an already created content Pass Execution If ${VNFM_ALLOWS_DUPLICATE_SUBS} == 0 NVFO is not permitting duplication. Skipping the test @@ -192,7 +304,7 @@ Post Create subscription - DUPLICATION ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Create subscription - NO-DUPLICATION Log Trying to create a subscription with an already created content Pass Execution If ${VNFM_ALLOWS_DUPLICATE_SUBS} == 1 VNFM permits duplication. Skipping the test @@ -202,7 +314,7 @@ Post Create subscription - NO-DUPLICATION ${body}= Get File jsons/fmSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get subscriptions Log Get the list of active subscriptions Set Headers {"Accept":"${ACCEPT}"} @@ -211,21 +323,21 @@ Get subscriptions Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get subscriptions - filter Log Get the list of active subscriptions using a filter Set Headers {"Accept": "${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get subscriptions - invalid filter Log Get the list of active subscriptions using an invalid filter Set Headers {"Accept": "${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter_invalid} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get subscriptions with all_fields attribute selector Log Get the list of active subscriptions, using fields Set Headers {"Accept": "${ACCEPT_JSON}"} @@ -260,25 +372,25 @@ PUT subscriptions Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH subscriptions log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE subscriptions log Trying to perform a DELETE. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Check HTTP Response Status Code Is [Arguments] ${expected_status} - Should Be Equal ${response.status_code} ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} Log Status code validated Check HTTP Response Body Json Schema Is @@ -286,4 +398,91 @@ Check HTTP Response Body Json Schema Is Should Contain ${response['headers']['Content-Type']} application/json ${schema} = Catenate SEPARATOR= ${input} .schema.json Validate Json ${schema} ${response['body']} - Log Json Schema Validation OK \ No newline at end of file + Log Json Schema Validation OK + +Check LINK in Header + ${linkURL}= Get Value From Json ${response['headers']} $..Link + Should Not Be Empty ${linkURL} + +Get subscriptions with filter "id" + Log Get the list of active subscriptions using a filter "id" + Set Headers {"Accept": "${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?id=${subscription_id} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body Subscription Matches the requested attribute-based filter "id" + Should Be Equal As Strings ${response['body']['id']} ${subscription_id} + +Get subscriptions with filter "filter_notificationTypes" + Log Get the list of active subscriptions using a filter "filter.notificationTypes" + Set Headers {"Accept": "${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?filter.notificationTypes=${notification_type} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_notificationTypes" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['filter']['notificationTypes']} ${notification_type} + END + +Get subscriptions with filter "filter_faultyResourceTypes" + Log Get the list of active subscriptions using a filter "filter.faultyResourceTypes" + Set Headers {"Accept": "${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?filter.faultyResourceTypes=${faultyResourceType} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_faultyResourceTypes" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['filter']['faultyResourceTypes']} ${faultyResourceType} + END + +Get subscriptions with filter "filter_perceivedSeverities" + Log Get the list of active subscriptions using a filter "filter.perceivedSeverities" + Set Headers {"Accept": "${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?filter.perceivedSeverities=${perceivedSeverity} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_perceivedSeverities" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['filter']['perceivedSeverities']} ${perceivedSeverity} + END + +Get subscriptions with filter "filter_eventTypes" + Log Get the list of active subscriptions using a filter "filter.eventTypes" + Set Headers {"Accept": "${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?filter.eventTypes=${eventType} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_eventTypes" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['filter']['eventTypes']} ${eventType} + END + +Get subscriptions with filter "filter_probableCauses" + Log Get the list of active subscriptions using a filter "filter.probableCauses" + Set Headers {"Accept": "${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?filter.probableCauses=${probableCause} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check PostCondition HTTP Response Body Subscriptions Matches the requested attribute-based filter "filter_probableCauses" + :FOR ${item} IN @{response['body']} + Should Be Equal As Strings ${item['filter']['probableCauses']} ${probableCause} + END + +Check resource existence + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} + Integer response status 200 + diff --git a/SOL002/VNFFaultManagement-API/environment/variables.txt b/SOL002/VNFFaultManagement-API/environment/variables.txt index 4a93fafa99bbc19c33af0eee20e25f1ba79d3984..1264a6aa915fde606f59bfb72f96a0d13a5db0f5 100644 --- a/SOL002/VNFFaultManagement-API/environment/variables.txt +++ b/SOL002/VNFFaultManagement-API/environment/variables.txt @@ -36,7 +36,6 @@ ${callback_endpoint_error} /endpoint_404 ${sleep_interval} 20s ${total_polling_time} 2 min ${polling_interval} 10 sec - ${notification_request} [] ${notification_response} [] @@ -48,4 +47,12 @@ ${AlarmListRebuiltNotification} {} ${fields} softwareImages,additionalArtifacts -${response}= httpresponse \ No newline at end of file +${response}= httpresponse + +${vnfcInstanceIds} [] +${faultyResourceType} COMPUTE +${eventType} COMMUNICATIONS_ALARM +${perceivedSeverity} CRITICAL +${probableCause} + +${notification_type} AlarmNotification \ No newline at end of file diff --git a/SOL002/VNFFaultManagement-API/schemas/ApiVersionInformation.schema.json b/SOL002/VNFFaultManagement-API/schemas/ApiVersionInformation.schema.json new file mode 100644 index 0000000000000000000000000000000000000000..a79641197fe678896eb17d04beaac08068ea3285 --- /dev/null +++ b/SOL002/VNFFaultManagement-API/schemas/ApiVersionInformation.schema.json @@ -0,0 +1,39 @@ +{ + "description": "This type represents API version information.\n", + "type": "object", + "required": [ + "uriPrefix", + "apiVersions" + ], + "properties": { + "uriPrefix": { + "description": "Specifies the URI prefix for the API, in the following form {apiRoot}/{apiName}/{apiMajorVersion}/.\n", + "type": "string" + }, + "apiVersions": { + "description": "Version(s) supported for the API signaled by the uriPrefix attribute.\n", + "type": "array", + "items": { + "type": "object", + "required": [ + "version" + ], + "properties": { + "version": { + "description": "Identifies a supported version. The value of the version attribute shall be a version identifier as specified in clause 9.1 (SOL013).\n", + "type": "string" + }, + "isDeprecated": { + "description": "If such information is available, this attribute indicates whether use of the version signaled by the version attribute is deprecated (true) or not (false).\nA deprecated version is still supported by the API producer but is recommended not to be used any longer. When a version is no longer supported, it does not appear in the response body.\n", + "type": "boolean" + }, + "retirementDate": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + } + } + } + } + } +} \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/ApiVersion.robot b/SOL002/VNFIndicator-API/ApiVersion.robot new file mode 100644 index 0000000000000000000000000000000000000000..fce69405cbb0b1fd92083ae17045bd52a7b612e1 --- /dev/null +++ b/SOL002/VNFIndicator-API/ApiVersion.robot @@ -0,0 +1,213 @@ +*** Settings *** + +Resource environment/variables.txt + +Library REST ${EM-VNF_SCHEMA}://${EM-VNF_HOST}:${EM-VNF_PORT} ssl_verify=false +Library DependencyLibrary +Library JSONLibrary +Library JSONSchemaLibrary schemas/ + +*** Test Cases *** +POST API Version - Method not implemented + [Documentation] Test ID: 6.3.2.7.1 + ... Test title: POST API version - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version + [Documentation] Test ID: 6.3.2.7.2 + ... Test title: GET API Version + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version - Method not implemented + [Documentation] Test ID: 6.3.2.7.3 + ... Test title: PUT API Version - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version - Method not implemented + [Documentation] Test ID: 6.3.2.7.4 + ... Test title: PATCH API Version - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version - Method not implemented + [Documentation] Test ID: 6.3.2.7.5 + ... Test title: DELETE API Version - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +POST API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.2.7.6 + ... Test title: POST API version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version with apiMajorVerion + [Documentation] Test ID: 6.3.2.7.7 + ... Test title: GET API Version with apiMajorVerion + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.2.7.8 + ... Test title: PUT API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.2.7.9 + ... Test title: PATCH API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.2.7.10 + ... Test title: DELETE API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +*** Keywords *** +POST API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +POST API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check HTTP Response Status Code Is + [Arguments] ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} + Log Status code validated + +Check HTTP Response Body Json Schema Is + [Arguments] ${input} + ${schema} = Catenate ${input} .schema.json + Validate Json ${schema} ${response['body']} + Log Json Schema Validation OK \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/IndividualSubscription.robot b/SOL002/VNFIndicator-API/IndividualSubscription.robot index e102b1c05d46583002a99ea8884903ea47b9a7f8..16de0847ec14eb829f19f6739d85df8782aeb71f 100644 --- a/SOL002/VNFIndicator-API/IndividualSubscription.robot +++ b/SOL002/VNFIndicator-API/IndividualSubscription.robot @@ -11,7 +11,7 @@ GET Individual VNF Indicator Subscription ... Test title: Get individual subscription to VNF performance indicators ... Test objective: The objective is to test the retrieval of individual VNF performance indicator subscription and perform a JSON schema validation of the returned subscription data structure ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators ... Post-Conditions: none @@ -24,20 +24,46 @@ GET Individual VNF Indicator Subscription with invalid resource identifier ... Test title: Get individual subscription to VNF performance indicators ... Test objective: The objective is to test that the retrieval of individual VNF performance indicator subscription fails when using an invalid resource identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators ... Post-Conditions: none GET Individual VNF Indicator Subscription with invalid resource identifier Check HTTP Response Status Code Is 404 Check HTTP Response Body Json Schema Is ProblemDetails - + +DELETE Individual VNF Indicator Subscription + [Documentation] Test ID: 6.3.2.5.3 + ... Test title: Delete individual subscription to VNF performance indicators + ... Test objective: The objective is to test the deletion of an individual VNF performance indicator subscription. + ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. + ... Reference: clause 8.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators + ... Post-Conditions: The subscription to VNF performance indicators is deleted + Send Delete Request for Individual VNF Indicator Subscription + Check HTTP Response Status Code Is 204 + Check Postcondition Individual VNF Indicator Subscription is Deleted + +DELETE Individual VNF Indicator Subscription with invalid resource identifier + [Documentation] Test ID: 6.3.2.5.4 + ... Test title: Delete individual subscription to VNF performance indicators + ... Test objective: The objective is to test that the deletion of an individual VNF performance indicator subscription fails when using an invalid resource identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. + ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. + ... Reference: clause 8.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators + ... Post-Conditions: none + Send Delete Request for Individual VNF Indicator Subscription with invalid resource identifier + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails + PUT Individual VNF Indicator Subscription - Method not implemented - [Documentation] Test ID 6.3.2.5.5 + [Documentation] Test ID: 6.3.2.5.5 ... Test title: PUT individual VNF indicator subscription - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify an individual VNF performance indicator subscription ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: The individual VNF indicator subscription is not modified by the operation @@ -46,11 +72,11 @@ PUT Individual VNF Indicator Subscription - Method not implemented Check Postcondition VNF individual subscription Unmodified (Implicit) PATCH Individual VNF Indicator Subscription - Method not implemented - [Documentation] Test ID 6.3.2.5.6 + [Documentation] Test ID: 6.3.2.5.6 ... Test title: PUT individual VNF indicator subscription - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update an individual VNF performance indicator subscription ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: The individual VNF indicator subscription is not modified by the operation @@ -59,11 +85,11 @@ PATCH Individual VNF Indicator Subscription - Method not implemented Check Postcondition VNF individual subscription Unmodified (Implicit) POST Individual VNF Indicator Subscription - Method not implemented - [Documentation] Test ID 6.3.2.5.7 + [Documentation] Test ID: 6.3.2.5.7 ... Test title: PUT individual VNF indicator subscription - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify an individual VNF performance indicator subscription ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: The individual VNF indicator subscription is not created by the operation @@ -71,32 +97,6 @@ POST Individual VNF Indicator Subscription - Method not implemented Check HTTP Response Status Code Is 405 Check Postcondition VNF individual subscription is not created -DELETE Individual VNF Indicator Subscription - [Documentation] Test ID: 6.3.2.5.3 - ... Test title: Delete individual subscription to VNF performance indicators - ... Test objective: The objective is to test the deletion of an individual VNF performance indicator subscription. - ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 - ... Config ID: Config_prod_VE - ... Applicability: The VNF supports the generation and maintenance of performance indicators - ... Post-Conditions: The subscription to VNF performance indicators is deleted - Send Delete Request for Individual VNF Indicator Subscription - Check HTTP Response Status Code Is 204 - Check Postcondition Individual VNF Indicator Subscription is Deleted - -DELETE Individual VNF Indicator Subscription with invalid resource identifier - [Documentation] Test ID: 6.3.2.5.4 - ... Test title: Delete individual subscription to VNF performance indicators - ... Test objective: The objective is to test that the deletion of an individual VNF performance indicator subscription fails when using an invalid resource identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. - ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 - ... Config ID: Config_prod_VE - ... Applicability: The VNF supports the generation and maintenance of performance indicators - ... Post-Conditions: none - Send Delete Request for Individual VNF Indicator Subscription with invalid resource identifier - Check HTTP Response Status Code Is 404 - Check HTTP Response Body Json Schema Is ProblemDetails - *** Keywords *** Get Individual VNF Indicator Subscription Log Trying to get a given subscription identified by subscriptionId diff --git a/SOL002/VNFIndicator-API/IndividualVNFindicator.robot b/SOL002/VNFIndicator-API/IndividualVNFindicator.robot index 43a4931f611b630da42aed71da8bfd39071c7ed5..f4cecd7135da72dae4981d4ce3ecaaf85b086885 100644 --- a/SOL002/VNFIndicator-API/IndividualVNFindicator.robot +++ b/SOL002/VNFIndicator-API/IndividualVNFindicator.robot @@ -10,7 +10,7 @@ Get Individual Indicator for VNF Instance ... Test title: Get individual performance indicator for a VNF instance ... Test objective: The objective is to test the retrieval of a performance indicator for a given VNF instance and perform a JSON schema validation of the returned indicator data structure ... Pre-conditions: A VNF instance is instantiated. At least one measure of performance indicator is available for the given VNF instance. - ... Reference: clause 8.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators ... Post-Conditions: none @@ -25,7 +25,7 @@ Get Individual Indicator for VNF Instance with invalid indicator identifier ... Test title: Get individual performance indicator for a VNF instance with invalid indicator identifier ... Test objective: The objective is to test that the retrieval of a performance indicator for a given VNF instance fails when using an invalid resource identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. At least one measure of performance indicator is available for the given VNF instance. - ... Reference: clause 8.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -38,7 +38,7 @@ POST Individual VNF Indicator - Method not implemented ... Test title: POST individual performance indicator for VNF instance - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new performance indicator for a VNF instance ... Pre-conditions: A VNF instance is instantiated. - ... Reference: clause 8.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -50,7 +50,7 @@ PUT Individual VNF Indicator - Method not implemented ... Test title: PUT individual performance indicator for VNF instance - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify an existing performance indicator for a VNF instance ... Pre-conditions: A VNF instance is instantiated. At least one measure of performance indicator is available for the given VNF instance. - ... Reference: clause 8.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -62,7 +62,7 @@ PATCH Individual VNF Indicator - Method not implemented ... Test title: PATCH individual performance indicator for VNF instance - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update an existing performance indicator for a VNF instance ... Pre-conditions: A VNF instance is instantiated. At least one measure of performance indicator is available for the given VNF instance. - ... Reference: clause 8.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -74,7 +74,7 @@ DELETE Individual VNF Indicator - Method not implemented ... Test title: DELETE individual performance indicator indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete an existing performance indicator for a VNF instance ... Pre-conditions: A VNF instance is instantiated. At least one measure of performance indicator is available for the given VNF instance. - ... Reference: clause 8.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: The individual performance indicator for the VNF instance is not deleted by the unsuccessful operation @@ -82,6 +82,82 @@ DELETE Individual VNF Indicator - Method not implemented Check HTTP Response Status Code Is 405 Check Postcondition Indicator for VNF instance Exist +Get Individual Performance Indicator + [Documentation] Test ID: 6.3.2.3.7 + ... Test title: Get Individual Performance Indicator + ... Test objective: The objective is to test the retrieval of a performance indicator and perform a JSON schema validation of the returned indicator data structure + ... Pre-conditions: At least one measure of performance indicator is available.. + ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators + ... Post-Conditions: none + Get Individual Indicator + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is vnfIndicator + Check HTTP Response Body Includes Requested Indicator ID + +Get Individual Performance Indicator with invalid indicator identifier + [Documentation] Test ID: 6.3.2.3.8 + ... Test title: Get Individual Performance Indicator with invalid indicator identifier + ... Test objective: The objective is to test that the retrieval of a performance indicator fails when using an invalid resource identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. + ... Pre-conditions: At least one measure of performance indicator is available. + ... Reference: Clause 8.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators. + ... Post-Conditions: none + Get Individual Indicator with invalid indicator identifier + Check HTTP Response Status Code Is 404 + Check HTTP Response Body Json Schema Is ProblemDetails + +POST Individual Performance Indicator - Method not implemented + [Documentation] Test ID: 6.3.2.3.9 + ... Test title: POST Individual Performance Indicator - Method not implemented + ... Test objective: The objective is to test that POST method is not allowed to create a new performance indicator. + ... Pre-conditions: + ... Reference: Clause 8.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators. + ... Post-Conditions: none + Send POST Request for individual indicator + Check HTTP Response Status Code Is 405 + +PUT Individual Performance Indicator - Method not implemented + [Documentation] Test ID: 6.3.2.3.10 + ... Test title: PUT Individual Performance Indicator - Method not implemented + ... Test objective: The objective is to test that PUT method is not allowed to modify an existing performance indicator. + ... Pre-conditions: At least one measure of performance indicator is available. + ... Reference: Clause 8.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators. + ... Post-Conditions: none + Send PUT Request for individual indicator + Check HTTP Response Status Code Is 405 + +PATCH Individual Performance Indicator - Method not implemented + [Documentation] Test ID: 6.3.2.3.11 + ... Test title: PATCH Individual Performance Indicator - Method not implemented + ... Test objective: The objective is to test that PATCH method is not allowed to update an existing performance indicator. + ... Pre-conditions: At least one measure of performance indicator is available. + ... Reference: Clause 8.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators. + ... Post-Conditions: none + Send PATCH Request for individual indicator + Check HTTP Response Status Code Is 405 + +DELETE Individual Performance Indicator - Method not implemented + [Documentation] Test ID: 6.3.2.3.12 + ... Test title: DELETE Individual Performance Indicator - Method not implemented + ... Test objective: The objective is to test that DELETE method is not allowed to delete an existing performance indicator. + ... Pre-conditions: At least one measure of performance indicator is available. + ... Reference: Clause 8.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators. + ... Post-Conditions: + Send DELETE Request for individual indicator + Check HTTP Response Status Code Is 405 + Check PostCondition Individual Indicator exist + *** Keywords *** Get Individual Indicator for a VNF instance Log This resource represents a VNF indicator related to a VNF instance. @@ -163,3 +239,58 @@ Check Postcondition Indicator for VNF instance Exist Get Individual Indicator for a VNF instance Should Be Equal As Strings ${response['body']['vnfInstanceId']} ${vnfInstanceId} Should Be Equal As Strings ${response['body']['id']} ${indicatorId} + +Get Individual Indicator + Log This resource represents a VNF indicator related to a VNF instance. + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/indicators/${indicatorId} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Get Individual Indicator with invalid indicator identifier + Log Trying to perform a negative get, using wrong identifier + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/indicators/${erroneousIndicatorId} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Send POST Request for individual indicator + Log Trying to perform a POST (method should not be implemented) + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + POST ${apiRoot}/${apiName}/${apiVersion}/indicators/${vnfInstanceId}/${notAllowedIndicatorId} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Send PUT Request for individual indicator + Log Trying to perform a PUT. This method should not be implemented + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + PUT ${apiRoot}/${apiName}/${apiVersion}/indicators/${indicatorId} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Send PATCH Request for individual indicator + Log Trying to perform a PATCH. This method should not be implemented + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + PATCH ${apiRoot}/${apiName}/${apiVersion}/indicators/${indicatorId} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Send DELETE Request for individual indicator + Log Trying to perform a DELETE. This method should not be implemented + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + DELETE ${apiRoot}/${apiName}/${apiVersion}/indicators/${indicatorId} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Check PostCondition Individual Indicator exist + Log This resource represents a VNF indicator related to a VNF instance. + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/indicators/${vnfInstanceId}/${indicatorId} + Integer response status 200 \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/SOL002-VNFIndicator-API.json b/SOL002/VNFIndicator-API/SOL002-VNFIndicator-API.json deleted file mode 100644 index c1885ee3554b7eb90526ac2799809b920922ca3b..0000000000000000000000000000000000000000 --- a/SOL002/VNFIndicator-API/SOL002-VNFIndicator-API.json +++ /dev/null @@ -1 +0,0 @@ -{"swagger":"2.0","info":{"version":"1.1.1","title":"SOL002 - VNF Indicator interface","description":"VNF Indicator interface of ETSI NFV SOL002.\nThis API allows the EM/VNF to provide information on value changes of VNF related indicators. VNF related indicators are declared in the VNFD.\n\nIMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to. In case of discrepancies the published ETSI Group Specification takes precedence.\n\nPlease report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis\n","license":{"name":"ETSI Forge copyright notice","url":"https://forge.etsi.org/etsi-forge-copyright-notice.txt"}},"externalDocs":{"description":"ETSI GS NFV-SOL 002 V2.4.1","url":"http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf"},"basePath":"/vnfind/v1","schemes":["http","https"],"consumes":["application/json"],"produces":["application/json"],"paths":{"/indicators":{"get":{"summary":"Query multiple indicators","description":"Get a list of indicators. Support of attribute based filtering via query parameters.","responses":{"200":{"description":"OK\nThe list of VNF indicators was queried successfully. The response body shall contain the representations of all VNF indicators that match the attribute-based filtering parameters.\n","schema":{"type":"array","items":{"type":"object","required":["id","value","vnfInstanceId","_links"],"properties":{"id":{"description":"An identifier that is unique within a VNF descriptor.\n","type":"string"},"name":{"type":"string"},"value":{"type":"object"},"vnfInstanceId":{"description":"An identifier with the intention of being globally unique.\n","type":"string"},"_links":{"description":"Links to resources related to this resource.\n","type":"object","required":["self"],"properties":{"self":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}},"vnfInstance":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}}}}}}}},"400":{"description":"Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"401":{"description":"Unauthorized\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"403":{"description":"Forbidden\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"404":{"description":"Not Found\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"405":{"description":"Method Not Allowed\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"406":{"description":"Not Acceptable\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"409":{"description":"Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"416":{"description":"Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"422":{"description":"Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"500":{"description":"Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"503":{"description":"Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}}}}},"/indicators/{vnfInstanceId}":{"parameters":[{"name":"vnfInstanceId","in":"path","description":"Service Unavailable\nIdentifier of the VNF instance to which the VNF indicators applies. NOTE: This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n","type":"string","required":true}],"get":{"summary":"Query multiple indicators related to a VNF instance.","description":"Get a list of indicators related to a specific VNF instance. Support of attribute based filtering via query parameters.\n","responses":{"200":{"description":"OK\nThe list of VNF indicators was queried successfully. The response body shall contain the representations of all VNF indicators that match the attribute-based filtering parameters.\n","schema":{"type":"array","items":{"type":"object","required":["id","value","vnfInstanceId","_links"],"properties":{"id":{"description":"An identifier that is unique within a VNF descriptor.\n","type":"string"},"name":{"type":"string"},"value":{"type":"object"},"vnfInstanceId":{"description":"An identifier with the intention of being globally unique.\n","type":"string"},"_links":{"description":"Links to resources related to this resource.\n","type":"object","required":["self"],"properties":{"self":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}},"vnfInstance":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}}}}}}}},"400":{"description":"Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"401":{"description":"Unauthorized\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"403":{"description":"Forbidden\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"404":{"description":"Not Found\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"405":{"description":"Method Not Allowed\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"406":{"description":"Not Acceptable\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"409":{"description":"Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"416":{"description":"Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"422":{"description":"Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"500":{"description":"Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"503":{"description":"Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}}}}},"/indicators/{vnfInstanceId}/{indicatorId}":{"parameters":[{"name":"vnfInstanceId","in":"path","description":"Service Unavailable\nIdentifier of the VNF instance to which the VNF indicators applies. NOTE: This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n","type":"string","required":true},{"name":"indicatorId","in":"path","description":"Identifier of the VNF indicator.\n","type":"string","required":true}],"get":{"summary":"Read an inidividual VNF indicator related to a VNF instance.","description":"Read an individual VNF indicator related to a specific VNF instance. NOTE: This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n","responses":{"200":{"description":"OK\nThe VNF indicator was read successfully. The response body shall contain the representation of the VNF indicator.\n","schema":{"type":"object","required":["id","value","vnfInstanceId","_links"],"properties":{"id":{"description":"An identifier that is unique within a VNF descriptor.\n","type":"string"},"name":{"type":"string"},"value":{"type":"object"},"vnfInstanceId":{"description":"An identifier with the intention of being globally unique.\n","type":"string"},"_links":{"description":"Links to resources related to this resource.\n","type":"object","required":["self"],"properties":{"self":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}},"vnfInstance":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}}}}}}},"400":{"description":"Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"401":{"description":"Unauthorized\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"403":{"description":"Forbidden\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"404":{"description":"Not Found\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"405":{"description":"Method Not Allowed\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"406":{"description":"Not Acceptable\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"409":{"description":"Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"416":{"description":"Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"422":{"description":"Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"500":{"description":"Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"503":{"description":"Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}}}}},"/subscriptions":{"post":{"summary":"Create a new subscription to VNF indicator change notifications","description":"Create a new subscription","parameters":[{"name":"subscription","in":"body","description":"Subscription data.","required":true,"schema":{"description":"This type represents a subscription request related to VNF indicator value change notifications.\n","type":"object","required":["callbackUri"],"properties":{"filter":{"description":"This type represents a subscription filter related to notifications about VNF indicator value changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n","type":"object","properties":{"vnfInstanceSubscriptionFilter":{"description":"This type represents subscription filter criteria to match VNF instances. * NOTE 1:\n The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to \n VNF instances that are based on certain VNFDs in a filter. They should not be used both\n in the same filter instance, but one alternative should be chosen.\n * NOTE 2:\n The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to\n particular VNF instances in a filter. They should not be used both in the same filter instance,\n but one alternative should be chosen.\n","type":"object","properties":{"vnfdIds":{"description":"If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. See NOTE 1.\n","type":"array","items":{"description":"An identifier with the intention of being globally unique.\n","type":"string"}},"vnfProductsFromProviders":{"description":"If present, match VNF instances that belong to VNF products from certain providers. See NOTE 1.\n","type":"array","items":{"type":"object","required":["vnfProvider"],"properties":{"vnfProvider":{"description":"Name of the VNF provider to match.\n","type":"string"},"vnfProducts":{"description":"If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n","type":"array","items":{"type":"object","required":["vnfProductName"],"properties":{"vnfProductName":{"description":"Name of the VNF product to match.\n","type":"string"},"versions":{"description":"If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n","type":"array","items":{"type":"object","required":["vnfSoftwareVersions"],"properties":{"vnfSoftwareVersions":{"description":"A version.\n","type":"string"},"vnfdVersions":{"description":"If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n","type":"array","items":{"description":"A version.\n","type":"string"}}}}}}}}}}},"vnfInstanceIds":{"description":"If present, match VNF instances with an instance identifier listed in this attribute. See NOTE 2.\n","type":"array","items":{"description":"An identifier with the intention of being globally unique.\n","type":"string"}},"vnfInstanceNames":{"description":"If present, match VNF instances with a VNF Instance Name listed in this attribute. See NOTE 2\n","type":"array","items":{"type":"string"}}}},"indicatorIds":{"description":"Match particular VNF indicator identifiers.\n","type":"array","items":{"description":"An identifier that is unique within a VNF descriptor.\n","type":"string"}}}},"callbackUri":{"description":"The URI of the endpoint to send the notification to.\n","type":"string","format":"URI"},"authentication":{"type":"object","required":["authType"],"properties":{"authType":{"description":"Defines the types of Authentication / Authorization which the API consumer is willing to accept when receiving a notification. Permitted values: * BASIC: In every HTTP request to the notification endpoint, use HTTP Basic authentication with the client credentials. \n* OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the notification endpoint, use an OAuth 2.0 Bearer token, obtained\n using the client credentials grant type.\n* TLS_CERT: Every HTTP request to the notification endpoint is sent over a mutually authenticated TLS session, i.e. not only the\n server is authenticated, but also the client is authenticated\n during the TLS tunnel setup.\n","type":"array","items":{"type":"string","enum":["BASIC","OAUTH2_CLIENT_CREDENTIALS","TLS_CERT"]}},"paramsBasic":{"description":"Parameters for authentication/authorization using BASIC. Shall be present if authType is \"BASIC\" and the contained information has not been provisioned out of band. Shall be absent otherwise.\n","type":"object","properties":{"userName":{"description":"Username to be used in HTTP Basic authentication. Shall be present if it has not been provisioned out of band.\n","type":"string"},"password":{"description":"Password to be used in HTTP Basic authentication. Shall be present if it has not been provisioned out of band.\n","type":"string"}}},"paramsOauth2ClientCredentials":{"description":"Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS. Shall be present if authType is \"OAUTH2_CLIENT_CREDENTIALS\" and the contained information has not been provisioned out of band. Shall be absent otherwise.\n","type":"object","properties":{"clientId":{"description":"Client identifier to be used in the access token request of the OAuth 2.0 client credentials grant type. Shall be present if it has not been provisioned out of band. The clientId and clientPassword passed in a subscription shall not be the same as the clientId and clientPassword that are used to obtain authorization for API requests. Client credentials may differ between subscriptions. The value of clientPassword should be generated by a random process.\n","type":"string"},"clientPassword":{"description":"Client password to be used in the access token request of the OAuth 2.0 client credentials grant type. Shall be present if it has not been provisioned out of band. The clientId and clientPassword passed in a subscription shall not be the same as the clientId and clientPassword that are used to obtain authorization for API requests. Client credentials may differ between subscriptions. The value of clientPassword should be generated by a random process.\n","type":"string"},"tokenEndpoint":{"description":"String formatted according to IETF RFC 3986.\n","type":"string"}}}}}}}}],"responses":{"201":{"description":"Created\nThe subscription was created successfully. The response body shall contain a representation of the created subscription resource.\n","schema":{"description":"This type represents a subscription related to notifications about VNF indicator value changes.\n","type":"object","required":["callbackUri","id","_links"],"properties":{"id":{"description":"An identifier with the intention of being globally unique.\n","type":"string"},"filter":{"description":"This type represents a subscription filter related to notifications about VNF indicator value changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n","type":"object","properties":{"vnfInstanceSubscriptionFilter":{"description":"This type represents subscription filter criteria to match VNF instances. * NOTE 1:\n The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to \n VNF instances that are based on certain VNFDs in a filter. They should not be used both\n in the same filter instance, but one alternative should be chosen.\n * NOTE 2:\n The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to\n particular VNF instances in a filter. They should not be used both in the same filter instance,\n but one alternative should be chosen.\n","type":"object","properties":{"vnfdIds":{"description":"If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. See NOTE 1.\n","type":"array","items":{"description":"An identifier with the intention of being globally unique.\n","type":"string"}},"vnfProductsFromProviders":{"description":"If present, match VNF instances that belong to VNF products from certain providers. See NOTE 1.\n","type":"array","items":{"type":"object","required":["vnfProvider"],"properties":{"vnfProvider":{"description":"Name of the VNF provider to match.\n","type":"string"},"vnfProducts":{"description":"If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n","type":"array","items":{"type":"object","required":["vnfProductName"],"properties":{"vnfProductName":{"description":"Name of the VNF product to match.\n","type":"string"},"versions":{"description":"If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n","type":"array","items":{"type":"object","required":["vnfSoftwareVersions"],"properties":{"vnfSoftwareVersions":{"description":"A version.\n","type":"string"},"vnfdVersions":{"description":"If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n","type":"array","items":{"description":"A version.\n","type":"string"}}}}}}}}}}},"vnfInstanceIds":{"description":"If present, match VNF instances with an instance identifier listed in this attribute. See NOTE 2.\n","type":"array","items":{"description":"An identifier with the intention of being globally unique.\n","type":"string"}},"vnfInstanceNames":{"description":"If present, match VNF instances with a VNF Instance Name listed in this attribute. See NOTE 2\n","type":"array","items":{"type":"string"}}}},"indicatorIds":{"description":"Match particular VNF indicator identifiers.\n","type":"array","items":{"description":"An identifier that is unique within a VNF descriptor.\n","type":"string"}}}},"callbackUri":{"description":"The URI of the endpoint to send the notification to.\n","type":"string","format":"URI"},"_links":{"description":"Links to resources related to this resource.\n","type":"object","required":["self"],"properties":{"self":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}}}}}},"headers":{"Location":{"description":"Pointer to the created subscription resource.\n","type":"string","format":"URI"}}},"400":{"description":"Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"401":{"description":"Unauthorized\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"403":{"description":"Forbidden\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"404":{"description":"Not Found\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"405":{"description":"Method Not Allowed\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"406":{"description":"Not Acceptable\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"409":{"description":"Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"416":{"description":"Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"422":{"description":"Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"500":{"description":"Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"503":{"description":"Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}}}},"get":{"summary":"Query multiple subscriptions.","description":"Service Unavailable\nThe GET method queries the list of active subscriptions of the functional block that invokes the method. It can be used e.g. for resynchronization after error situations.\n","responses":{"200":{"description":"OK\nThe list of subscriptions was queried successfully. The response body shall contain the representations of all active subscriptions of the functional block that invokes the method which match the attribute filter.\n","schema":{"type":"array","items":{"description":"This type represents a subscription related to notifications about VNF indicator value changes.\n","type":"object","required":["callbackUri","id","_links"],"properties":{"id":{"description":"An identifier with the intention of being globally unique.\n","type":"string"},"filter":{"description":"This type represents a subscription filter related to notifications about VNF indicator value changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n","type":"object","properties":{"vnfInstanceSubscriptionFilter":{"description":"This type represents subscription filter criteria to match VNF instances. * NOTE 1:\n The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to \n VNF instances that are based on certain VNFDs in a filter. They should not be used both\n in the same filter instance, but one alternative should be chosen.\n * NOTE 2:\n The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to\n particular VNF instances in a filter. They should not be used both in the same filter instance,\n but one alternative should be chosen.\n","type":"object","properties":{"vnfdIds":{"description":"If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. See NOTE 1.\n","type":"array","items":{"description":"An identifier with the intention of being globally unique.\n","type":"string"}},"vnfProductsFromProviders":{"description":"If present, match VNF instances that belong to VNF products from certain providers. See NOTE 1.\n","type":"array","items":{"type":"object","required":["vnfProvider"],"properties":{"vnfProvider":{"description":"Name of the VNF provider to match.\n","type":"string"},"vnfProducts":{"description":"If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n","type":"array","items":{"type":"object","required":["vnfProductName"],"properties":{"vnfProductName":{"description":"Name of the VNF product to match.\n","type":"string"},"versions":{"description":"If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n","type":"array","items":{"type":"object","required":["vnfSoftwareVersions"],"properties":{"vnfSoftwareVersions":{"description":"A version.\n","type":"string"},"vnfdVersions":{"description":"If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n","type":"array","items":{"description":"A version.\n","type":"string"}}}}}}}}}}},"vnfInstanceIds":{"description":"If present, match VNF instances with an instance identifier listed in this attribute. See NOTE 2.\n","type":"array","items":{"description":"An identifier with the intention of being globally unique.\n","type":"string"}},"vnfInstanceNames":{"description":"If present, match VNF instances with a VNF Instance Name listed in this attribute. See NOTE 2\n","type":"array","items":{"type":"string"}}}},"indicatorIds":{"description":"Match particular VNF indicator identifiers.\n","type":"array","items":{"description":"An identifier that is unique within a VNF descriptor.\n","type":"string"}}}},"callbackUri":{"description":"The URI of the endpoint to send the notification to.\n","type":"string","format":"URI"},"_links":{"description":"Links to resources related to this resource.\n","type":"object","required":["self"],"properties":{"self":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}}}}}}}},"400":{"description":"Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"401":{"description":"Unauthorized\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"403":{"description":"Forbidden\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"404":{"description":"Not Found\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"405":{"description":"Method Not Allowed\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"406":{"description":"Not Acceptable\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"409":{"description":"Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"416":{"description":"Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"422":{"description":"Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"500":{"description":"Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"503":{"description":"Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}}}}},"/subscriptions/{subscriptionId}":{"get":{"summary":"Read an individual subscription.","description":"Service Unavailable\nThis resource represents an individual subscription. The client can use this resource to read and to terminate a subscription to notifications related to VNF indicator value changes.\n","parameters":[{"name":"subscriptionId","description":"Identifier of this subscription. NOTE:\n This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header\n in the response to a POST request creating a new subscription resource. It can also be retrieved\n from the \"id\" attribute in the payload body of that response.\n","in":"path","type":"string","required":true}],"responses":{"200":{"description":"OK\nThe subscriptions was queried successfully. The response body shall contain the representation of the requested subscription.\n","schema":{"description":"This type represents a subscription related to notifications about VNF indicator value changes.\n","type":"object","required":["callbackUri","id","_links"],"properties":{"id":{"description":"An identifier with the intention of being globally unique.\n","type":"string"},"filter":{"description":"This type represents a subscription filter related to notifications about VNF indicator value changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n","type":"object","properties":{"vnfInstanceSubscriptionFilter":{"description":"This type represents subscription filter criteria to match VNF instances. * NOTE 1:\n The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to \n VNF instances that are based on certain VNFDs in a filter. They should not be used both\n in the same filter instance, but one alternative should be chosen.\n * NOTE 2:\n The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to\n particular VNF instances in a filter. They should not be used both in the same filter instance,\n but one alternative should be chosen.\n","type":"object","properties":{"vnfdIds":{"description":"If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. See NOTE 1.\n","type":"array","items":{"description":"An identifier with the intention of being globally unique.\n","type":"string"}},"vnfProductsFromProviders":{"description":"If present, match VNF instances that belong to VNF products from certain providers. See NOTE 1.\n","type":"array","items":{"type":"object","required":["vnfProvider"],"properties":{"vnfProvider":{"description":"Name of the VNF provider to match.\n","type":"string"},"vnfProducts":{"description":"If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n","type":"array","items":{"type":"object","required":["vnfProductName"],"properties":{"vnfProductName":{"description":"Name of the VNF product to match.\n","type":"string"},"versions":{"description":"If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n","type":"array","items":{"type":"object","required":["vnfSoftwareVersions"],"properties":{"vnfSoftwareVersions":{"description":"A version.\n","type":"string"},"vnfdVersions":{"description":"If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n","type":"array","items":{"description":"A version.\n","type":"string"}}}}}}}}}}},"vnfInstanceIds":{"description":"If present, match VNF instances with an instance identifier listed in this attribute. See NOTE 2.\n","type":"array","items":{"description":"An identifier with the intention of being globally unique.\n","type":"string"}},"vnfInstanceNames":{"description":"If present, match VNF instances with a VNF Instance Name listed in this attribute. See NOTE 2\n","type":"array","items":{"type":"string"}}}},"indicatorIds":{"description":"Match particular VNF indicator identifiers.\n","type":"array","items":{"description":"An identifier that is unique within a VNF descriptor.\n","type":"string"}}}},"callbackUri":{"description":"The URI of the endpoint to send the notification to.\n","type":"string","format":"URI"},"_links":{"description":"Links to resources related to this resource.\n","type":"object","required":["self"],"properties":{"self":{"description":"This type represents a link to a resource.\n","type":"object","required":["href"],"properties":{"href":{"description":"URI of the referenced resource.\n","type":"string","format":"url"}}}}}}}},"400":{"description":"Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"401":{"description":"Unauthorized\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"403":{"description":"Forbidden\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"404":{"description":"Not Found\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"405":{"description":"Method Not Allowed\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"406":{"description":"Not Acceptable\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"409":{"description":"Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"416":{"description":"Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"422":{"description":"Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"500":{"description":"Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"503":{"description":"Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}}}},"delete":{"summary":"Delete a subscription","description":"Terminate an individual subscription.","parameters":[{"name":"subscriptionId","description":"Service Unavailable\nIdentifier of this subscription. NOTE:\n This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header\n in the response to a POST request creating a new subscription resource. It can also be retrieved\n from the \"id\" attribute in the payload body of that response.\n","in":"path","type":"string","required":true}],"responses":{"204":{"description":"No Content\nThe subscription was deleted successfully. The response body shall be empty.\n"},"400":{"description":"Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"401":{"description":"Unauthorized\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1},"WWW-Authenticate":{"description":"Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n","type":"string","maximum":1,"minimum":0}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"403":{"description":"Forbidden\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"404":{"description":"Not Found\nIf 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.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"405":{"description":"Method Not Allowed\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"406":{"description":"Not Acceptable\nIf 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 in that case.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"409":{"description":"Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"416":{"description":"Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"422":{"description":"Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"500":{"description":"Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}},"503":{"description":"Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n","headers":{"Content-Type":{"description":"The MIME type of the body of the response.","type":"string","maximum":1,"minimum":1}},"schema":{"description":"The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n","type":"object","required":["status","detail"],"properties":{"type":{"description":"A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n","type":"string","format":"URI"},"title":{"description":"A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.\n","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n","type":"string","format":"URI"}}}}}}}}} diff --git a/SOL002/VNFIndicator-API/Subscriptions.robot b/SOL002/VNFIndicator-API/Subscriptions.robot index 21f4d4ac59ce9e3437f4a31584611d48a725db42..fd458fbb6c015e00fe4d96b3a0736c26ffa964d0 100644 --- a/SOL002/VNFIndicator-API/Subscriptions.robot +++ b/SOL002/VNFIndicator-API/Subscriptions.robot @@ -5,7 +5,8 @@ Resource environment/subscriptions.txt Library OperatingSystem Library JSONLibrary Library Process -Library MockServerLibrary +Library MockServerLibrary +Library String Library REST ${EM-VNF_SCHEMA}://${EM-VNF_HOST}:${EM-VNF_PORT} ssl_verify=false Suite Setup Create Sessions Suite Teardown Terminate All Processes kill=true @@ -16,7 +17,7 @@ GET VNF Indicators Subscriptions ... Test title: GET VNF Indicators Subscriptions ... Test objective: The objective is to test the retrieval of all VNF indicators subscriptions and perform a JSON schema validation of the returned subscriptions data structure ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of indicators ... Post-Conditions: none @@ -29,7 +30,7 @@ GET VNF Indicators Subscriptions with attribute-based filter ... Test title: GET VNF Indicators Subscriptions with attribute-based filter ... Test objective: The objective is to test the retrieval of all VNF indicators subscriptions using attribute-based filter and perform a JSON schema and content validation of the returned subscriptions data structure ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of indicators ... Post-Conditions: none @@ -43,7 +44,7 @@ GET VNF Indicators Subscriptions with invalid attribute-based filter ... Test title: GET VNF Indicators Subscriptions with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of all VNF indicators subscriptions fails when using invalid attribute-based filter. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of indicators ... Post-Conditions: none @@ -52,11 +53,11 @@ GET VNF Indicators Subscriptions with invalid attribute-based filter Check HTTP Response Body Json Schema Is ProblemDetails GET VNF Indicators Subscriptions with invalid resource endpoint - [Documentation] Test ID 6.3.2.4.4 + [Documentation] Test ID: 6.3.2.4.4 ... Test title: GET VNF Indicators Subscriptions with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of all VNF indicators subscriptions fails when using invalid resource endpoint. ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of indicators. ... Post-Conditions: none @@ -64,11 +65,11 @@ GET VNF Indicators Subscriptions with invalid resource endpoint Check HTTP Response Status Code Is 404 Create new VNF indicator subscription - [Documentation] Test ID 6.3.2.4.5 + [Documentation] Test ID: 6.3.2.4.5 ... Test title: Create new VNF indicator subscription ... Test objective: The objective is to test the creation of a new VNF indicator subscription perform a JSON schema and content validation of the returned subscriptions data structure ... Pre-conditions: A VNF instance is instantiated. - ... Reference: clause 8.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of indicators. ... Post-Conditions: The VNF indicator subscription is successfully set and it matches the issued subscription @@ -79,11 +80,11 @@ Create new VNF indicator subscription Check Postcondition VNF Indicator Subscription Is Set PUT VNF Indicator Subscriptions - Method not implemented - [Documentation] Test ID 6.3.2.4.6 + [Documentation] Test ID: 6.3.2.4.6 ... Test title: PUT VNF Indicator Subscriptions - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify VNF indicator subscriptions ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.5.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.5.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of indicators. ... Post-Conditions: none @@ -91,11 +92,11 @@ PUT VNF Indicator Subscriptions - Method not implemented Check HTTP Response Status Code Is 405 PATCH VNF Indicator Subscriptions - Method not implemented - [Documentation] Test ID 6.3.2.4.7 + [Documentation] Test ID: 6.3.2.4.7 ... Test title: PATCH VNF Indicator Subscriptions - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update VNF indicator subscriptions ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.5.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.5.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of indicators. ... Post-Conditions: none @@ -103,17 +104,43 @@ PATCH VNF Indicator Subscriptions - Method not implemented Check HTTP Response Status Code Is 405 DELETE VNF Indicator Subscriptions - Method not implemented - [Documentation] Test ID 6.3.2.4.8 + [Documentation] Test ID: 6.3.2.4.8 ... Test title: DELETE VNF Indicator Subscriptions - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete VNF indicator subscriptions ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. - ... Reference: clause 8.4.5.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.5.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of indicators. ... Post-Conditions: none Send Delete Request for VNF Indicator Subscriptions Check HTTP Response Status Code Is 405 +GET VNF Indicators Subscriptions to get Paged Response + [Documentation] Test ID: 6.3.2.4.9 + ... Test title: GET VNF Indicators Subscriptions to get Paged Response + ... Test objective: The objective is to test the retrieval of all VNF indicators subscriptions to get Paged Response. + ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of indicators + ... Post-Conditions: none + Get VNF Indicators Subscriptions + Check HTTP Response Status Code Is 200 + Check LINK in Header + +GET VNF Indicators Subscriptions - Bad Request Response too Big + [Documentation] Test ID: 6.3.2.4.10 + ... Test title: GET VNF Indicators Subscriptions - Bad Request Response too Big + ... Test objective: The objective is to test that the retrieval of all VNF indicators subscriptions fails because response is too big. The test also checks the JSON schema of the unsuccessful operation HTTP response. + ... Pre-conditions: A VNF instance is instantiated. At least one VNF indicator subscription is available in the VNF. + ... Reference: Clause 8.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of indicators + ... Post-Conditions: none + Get VNF Indicators Subscriptions + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails + *** Keywords *** Get VNF Indicators Subscriptions Log Trying to get the list of subscriptions @@ -220,9 +247,9 @@ Check Postcondition VNF Indicator Subscription Is Set Check HTTP Response Body Subscriptions Match the requested Attribute-Based Filter Log Check Response includes VNF Indicators according to filter - #todo - - + @{words} = Split String ${POS_FILTER} ,${SEPERATOR} + Should Be Equal As Strings ${response['body'][0]['callbackUri']} @{words}[1] + Create Sessions Pass Execution If ${VNFM_CHECKS_NOTIF_ENDPOINT} == 0 MockServer not necessary to run Start Process java -jar ${MOCK_SERVER_JAR} -serverPort ${callback_port} alias=mockInstance @@ -234,4 +261,8 @@ Check Notification Endpoint &{notification_response}= Create Mock Response headers="Content-Type: application/json" status_code=204 Create Mock Expectation ${notification_request} ${notification_response} Wait Until Keyword Succeeds ${total_polling_time} ${polling_interval} Verify Mock Expectation ${notification_request} - Clear Requests ${callback_endpoint} \ No newline at end of file + Clear Requests ${callback_endpoint} + +Check LINK in Header + ${linkURL}= Get Value From Json ${response['headers']} $..Link + Should Not Be Empty ${linkURL} \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/VNFIndicators.robot b/SOL002/VNFIndicator-API/VNFIndicators.robot index 92edb2aa050053c0d841c574cd8eb5ade364a823..bc6dbd9c9c56621a23963fa2646f9618e752a435 100644 --- a/SOL002/VNFIndicator-API/VNFIndicators.robot +++ b/SOL002/VNFIndicator-API/VNFIndicators.robot @@ -1,8 +1,9 @@ *** Settings *** -Documentation This clause defines all the resources and methods provided by the VNF Indicator interface. \ +Documentation This Clause defines all the resources and methods provided by the VNF Indicator interface. \ Library JSONSchemaLibrary schemas/ Resource environment/variables.txt # Generic Parameters Library JSONLibrary +Library String Resource environment/vnfIndicators.txt Library REST ${EM-VNF_SCHEMA}://${EM-VNF_HOST}:${EM-VNF_PORT} ssl_verify=false @@ -12,7 +13,7 @@ Get all VNF Indicators ... Test title: Get all VNF Indicators ... Test objective: The objective is to test the retrieval of all the available VNF indicators and perform a JSON schema validation of the collected indicators data structure ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. - ... Reference: clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -25,7 +26,7 @@ Get VNF Indicators with attribute-based filter ... Test title: Get VNF Indicators with attribute-based filter ... Test objective: The objective is to test the retrieval of VNF indicators using attribute-based filter, perform a JSON schema validation of the collected indicators data structure, and verify that the retrieved information matches the issued attribute-based filters ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. - ... Reference: clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -39,7 +40,7 @@ Get VNF Indicators with invalid attribute-based filter ... Test title: Get VNF Indicators with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of VNF indicators fails when using invalid attribute-based filters, and perform the JSON schema validation of the failed operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. - ... Reference: clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -52,7 +53,7 @@ Get all VNF Indicators with malformed authorization token ... Test title: GET all VNF Indicators with malformed authrization token. ... Test objective: The objective is to test that the retrieval of VNF indicators fails when using malformed authorization token ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. - ... Reference: clause 4.5.3.3, 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 4.5.3.3, 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. The VNF requires the usage of access tokens for authorizing the API requests. ... Post-Conditions: none @@ -64,7 +65,7 @@ Get all VNF Indicators without authorization token ... Test title: GET all VNF Indicators without authorization token ... Test objective: The objective is to test that the retrieval of VNF indicators fails when omitting the authorization token ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. - ... Reference: clause 4.5.3.3, 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 4.5.3.3, 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. The VNF requires the usage of access tokens for authorizing the API requests. ... Post-Conditions: none @@ -76,7 +77,7 @@ GET all VNF Indicators with expired or revoked authorization token ... Test title: GET all VNF Indicators with expired or revoked authorization token ... Test objective: The objective is to test that the retrieval of VNF indicators fails when using expired or revoked authorization token ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. - ... Reference: clause 4.5.3.3, 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 4.5.3.3, 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. The VNF requires the usage of access tokens for authorizing the API requests. ... Post-Conditions: none @@ -88,7 +89,7 @@ Get all VNF Indicators with invalid resource endpoint ... Test title: GET all VNF Indicators with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of VNF indicators fails when using invalid resource endpoint ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. - ... Reference: clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -100,7 +101,7 @@ POST all VNF Indicators - Method not implemented ... Test title: POST all VNF Indicators - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new VNF indicators ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF - ... Reference: clause 8.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -112,7 +113,7 @@ PUT all VNF Indicators - Method not implemented ... Test title: PUT all VNF Indicators - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify VNF indicators ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF - ... Reference: clause 8.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -124,7 +125,7 @@ PATCH all VNF Indicators - Method not implemented ... Test title: PATCH all VNF Indicators - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update VNF indicators ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF - ... Reference: clause 8.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -136,7 +137,7 @@ DELETE all VNF Indicators - Method not implemented ... Test title: DELETE all VNF Indicators - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete VNF indicators ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF - ... Reference: clause 8.4.2.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.2.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -144,6 +145,32 @@ DELETE all VNF Indicators - Method not implemented Check HTTP Response Status Code Is 405 Check Postcondition VNF Indicators Exist +Get VNF Indicators to get Paged Response + [Documentation] Test ID: 6.3.2.1.12 + ... Test title: Get VNF Indicators to get Paged Response + ... Test objective: The objective is to test the retrieval of all the available VNF indicators with Paged Response. + ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators. + ... Post-Conditions: none + Get all VNF indicators + Check HTTP Response Status Code Is 200 + Check LINK in Header + +Get VNF Indicators - Bad Request Response too Big + [Documentation] Test ID: 6.3.2.1.13 + ... Test title: Get VNF Indicators - Bad Request Response too Big + ... Test objective: The objective is to test that the retrieval of VNF indicators fails when response is too big, and perform the JSON schema validation of the failed operation HTTP response. + ... Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF. + ... Reference: Clause 8.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators. + ... Post-Conditions: none + Get all VNF indicators + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails + *** Keywords *** Get all VNF indicators Log The GET method queries multiple VNF indicators @@ -269,4 +296,11 @@ Check Postcondition VNF Indicators Exist Check HTTP Response Body vnfIndicators Matches the requested attribute-based filter Log Check Response includes VNF Indicators according to filter - #todo \ No newline at end of file + @{attr} = Split String ${POS_FILTER} ,${VAR_SEPERATOR} + @{var_name} = Split String @{attr}[0] ,${SEPERATOR} + @{var_id} = Split String @{attr}[1] ,${SEPERATOR} + Should Be True "${response['body'][0]['name']}"=="@{var_name}[1]" and "${response['body'][0]['vnfInstanceId']}"=="@{var_id}[1]" + +Check LINK in Header + ${linkURL}= Get Value From Json ${response['headers']} $..Link + Should Not Be Empty ${linkURL} diff --git a/SOL002/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot b/SOL002/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot index 70bd4ab965d3cdae4f1420329592cb0a6a1449cd..11f83e45bbbcf2a68de2f9040650f1df20b52ce3 100644 --- a/SOL002/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot +++ b/SOL002/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot @@ -4,6 +4,7 @@ Library JSONSchemaLibrary schemas/ Resource environment/variables.txt # Generic Parameters Resource environment/vnfIndicatorinVnfInstance.txt Library JSONLibrary +Library String Library REST ${EM-VNF_SCHEMA}://${EM-VNF_HOST}:${EM-VNF_PORT} ssl_verify=false *** Test Cases *** @@ -12,7 +13,7 @@ Get Indicators for VNF Instance ... Test title: Get all performance indicators for a VNF instance ... Test objective: The objective is to test the retrieval of all performance indicators for a given VNF instance and perform a JSON schema validation of the returned indicators data structure ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. - ... Reference: clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators ... Post-Conditions: none @@ -22,11 +23,11 @@ Get Indicators for VNF Instance Check HTTP Response Body Includes Requested VNF Instance ID GET Indicators for VNF Instance with attribute-based filter - [Documentation] Test ID 6.3.2.2.2 + [Documentation] Test ID: 6.3.2.2.2 ... Test title: Get all performance indicators for a VNF instance with attribute-based filter ... Test objective: The objective is to test the retrieval of all performance indicators for a given VNF instance using attribute-based filter and perform a JSON schema validation of the returned indicators data structure ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. - ... Reference: clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators ... Post-Conditions: none @@ -36,11 +37,11 @@ GET Indicators for VNF Instance with attribute-based filter Check HTTP Response Body Matches Attribute-Based Filter Get Indicators for VNF Instance with invalid attribute-based filter - [Documentation] Test ID 6.3.2.2.3 + [Documentation] Test ID: 6.3.2.2.3 ... Test title: Get all performance indicators for a VNF instance with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of all performance indicators for a given VNF instance fails using invalid attribute-based filter. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. - ... Reference: clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -49,11 +50,11 @@ Get Indicators for VNF Instance with invalid attribute-based filter Check HTTP Response Body Json Schema Is ProblemDetails Get Indicators for VNF Instance with invalid resource identifier - [Documentation] Test ID 6.3.2.2.4 + [Documentation] Test ID: 6.3.2.2.4 ... Test title: Get all performance indicators for a VNF instance with invalid resource identifier ... Test objective: The objective is to test that the retrieval of all performance indicators for a given VNF instance fails when using invalid resource identifier. The test also checks the JSON schema of the unsuccessful operation HTTP response. ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. - ... Reference: clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -62,11 +63,11 @@ Get Indicators for VNF Instance with invalid resource identifier Check HTTP Response Body Json Schema Is ProblemDetails POST Indicators for VNF instance - Method not implemented - [Documentation] Test ID 6.3.2.2.5 + [Documentation] Test ID: 6.3.2.2.5 ... Test title: POST performance indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create new performance indicators for a VNF instance ... Pre-conditions: A VNF instance is instantiated. - ... Reference: clause 8.4.3.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -74,11 +75,11 @@ POST Indicators for VNF instance - Method not implemented Check HTTP Response Status Code Is 405 PUT Indicators for VNF instance - Method not implemented - [Documentation] Test ID 6.3.2.2.6 + [Documentation] Test ID: 6.3.2.2.6 ... Test title: PUT performance indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify existing performance indicators for a VNF instance ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. - ... Reference: clause 8.4.3.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -86,11 +87,11 @@ PUT Indicators for VNF instance - Method not implemented Check HTTP Response Status Code Is 405 PATCH Indicators for VNF instance - Method not implemented - [Documentation] Test ID 6.3.2.2.7 + [Documentation] Test ID: 6.3.2.2.7 ... Test title: PATCH performance indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update existing performance indicators for a VNF instance ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. - ... Reference: clause 8.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: none @@ -98,17 +99,43 @@ PATCH Indicators for VNF instance - Method not implemented Check HTTP Response Status Code Is 405 DELETE Indicators for VNF instance - Method not implemented - [Documentation] Test ID 6.3.2.2.8 + [Documentation] Test ID: 6.3.2.2.8 ... Test title: DELETE performance indicators for VNF instance - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete performance indicators for a VNF instance ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. - ... Reference: clause 8.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: The VNF supports the generation and maintenance of performance indicators. ... Post-Conditions: The indicators for the VNF instance are not deleted by the unsuccessful operation Send DELETE Request for indicators in VNF instance Check HTTP Response Status Code Is 405 Check Postcondition Indicators for VNF instance Exist + +Get Indicators for VNF Instance to get Paged Response + [Documentation] Test ID: 6.3.2.2.9 + ... Test title: Get Indicators for VNF Instance to get Paged Response + ... Test objective: The objective is to test the retrieval of all performance indicators for a given VNF instance to get paged response. + ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators + ... Post-Conditions: none + Get all indicators for a VNF instance + Check HTTP Response Status Code Is 200 + Check LINK in Header + +Get Indicators for VNF Instance - Bad Request Response too Big + [Documentation] Test ID: 6.3.2.2.10 + ... Test title: Get Indicators for VNF Instance - Bad Request Response too Big + ... Test objective: The objective is to test that the retrieval of all performance indicators for a given VNF instance fails when response is too big. The test also checks the JSON schema of the unsuccessful operation HTTP response. + ... Pre-conditions: A VNF instance is instantiated. One or more measures of performance indicators are available for the given VNF instance. + ... Reference: Clause 8.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: The VNF supports the generation and maintenance of performance indicators. + ... Post-Conditions: none + Get all indicators for a VNF instance + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails *** Keywords *** Get all indicators for a VNF instance @@ -196,12 +223,20 @@ Check HTTP Response Body Json Schema Is Check HTTP Response Body Includes Requested VNF Instance ID Log Check Response includes Indicators according to resource identifier - #todo + Should Be Equal As Strings ${response['body']['vnfInstanceId']} ${vnfInstanceId} Check HTTP Response Body Matches Attribute-Based Filter Log Check Response includes VNF Indicators according to filter - #todo + @{words} = Split String ${POS_FIELDS} ,${SEPERATOR} + Should Be Equal As Strings ${response['body'][0]['name']} @{words}[1] Check Postcondition Indicators for VNF instance Exist - Log Check Response includes VNF Indicators according to filter - #todo + Log Check Postcondition Indicators for VNF instance Exist + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/indicators/${vnfInstanceId} + Should Be Equal ${response['status']} 200 + +Check LINK in Header + ${linkURL}= Get Value From Json ${response['headers']} $..Link + Should Not Be Empty ${linkURL} \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/environment/subscriptions.txt b/SOL002/VNFIndicator-API/environment/subscriptions.txt index 401b374f6fa4c64f5dbac76b67ed2a7d5f3741d1..ec4b63ac0b029a4352bd6e32d35b625436fed83b 100644 --- a/SOL002/VNFIndicator-API/environment/subscriptions.txt +++ b/SOL002/VNFIndicator-API/environment/subscriptions.txt @@ -7,3 +7,4 @@ ${NEG_FILTER} callback=http://127.0.0.1/subscribe ${response}= httpresponse ${total_polling_time} 2 min ${polling_interval} 10 sec +${SEPERATOR} = \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/environment/variables.txt b/SOL002/VNFIndicator-API/environment/variables.txt index 8c323fcab26fba81c930037c0ddcdb32ff039333..58dff1e612c0bc623913e0dee9f69dea4b414152 100644 --- a/SOL002/VNFIndicator-API/environment/variables.txt +++ b/SOL002/VNFIndicator-API/environment/variables.txt @@ -22,4 +22,6 @@ ${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies. ${callback_uri} http://localhost ${callback_port} 9091 ${callback_endpoint} /endpoint -${callback_endpoint_error} /endpoint_404 \ No newline at end of file +${callback_endpoint_error} /endpoint_404 + +${response} some_response_object \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/environment/vnfIndicatorinVnfInstance.txt b/SOL002/VNFIndicator-API/environment/vnfIndicatorinVnfInstance.txt index 4ebe5488206a095bcb99595e51e9c2f1450b3ac3..8651dee3da6c2b3a4eabfa69879dee2659db881e 100644 --- a/SOL002/VNFIndicator-API/environment/vnfIndicatorinVnfInstance.txt +++ b/SOL002/VNFIndicator-API/environment/vnfIndicatorinVnfInstance.txt @@ -4,3 +4,4 @@ ${erroneousVnfInstanceId} erroneousVnfInstanceId ${POS_FIELDS} name=vnfIndicator ${NEG_FIELDS} wrongName=any_value ${response}= httpresponse +${SEPERATOR} = \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/environment/vnfIndicators.txt b/SOL002/VNFIndicator-API/environment/vnfIndicators.txt index 8b1a56f48622c75784aabf684a9bbd76a807e97e..8476590796160e3da8b0d6c7e3548b5d74381854 100644 --- a/SOL002/VNFIndicator-API/environment/vnfIndicators.txt +++ b/SOL002/VNFIndicator-API/environment/vnfIndicators.txt @@ -2,4 +2,7 @@ ${POS_FIELDS} name=vnfIndicator&vnfInstanceId=80b0deba-c398-445b-bef0-ac0fe733e3d0 ${NEG_FIELDS} wrongName=wrongValue ${response} some_response_object -${vnfIndicators} +${vnfIndicators} = +${SEPERATOR} = +${VAR_SEPERATOR} & +${POS_FILTER} = \ No newline at end of file diff --git a/SOL002/VNFIndicator-API/schemas/ApiVersionInformation.schema.json b/SOL002/VNFIndicator-API/schemas/ApiVersionInformation.schema.json new file mode 100644 index 0000000000000000000000000000000000000000..a79641197fe678896eb17d04beaac08068ea3285 --- /dev/null +++ b/SOL002/VNFIndicator-API/schemas/ApiVersionInformation.schema.json @@ -0,0 +1,39 @@ +{ + "description": "This type represents API version information.\n", + "type": "object", + "required": [ + "uriPrefix", + "apiVersions" + ], + "properties": { + "uriPrefix": { + "description": "Specifies the URI prefix for the API, in the following form {apiRoot}/{apiName}/{apiMajorVersion}/.\n", + "type": "string" + }, + "apiVersions": { + "description": "Version(s) supported for the API signaled by the uriPrefix attribute.\n", + "type": "array", + "items": { + "type": "object", + "required": [ + "version" + ], + "properties": { + "version": { + "description": "Identifies a supported version. The value of the version attribute shall be a version identifier as specified in clause 9.1 (SOL013).\n", + "type": "string" + }, + "isDeprecated": { + "description": "If such information is available, this attribute indicates whether use of the version signaled by the version attribute is deprecated (true) or not (false).\nA deprecated version is still supported by the API producer but is recommended not to be used any longer. When a version is no longer supported, it does not appear in the response body.\n", + "type": "boolean" + }, + "retirementDate": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + } + } + } + } + } +} \ No newline at end of file diff --git a/SOL002/VNFIndicatorNotification-API/VnfIndicatorNotification.robot b/SOL002/VNFIndicatorNotification-API/VnfIndicatorNotification.robot index 010fb7e96c277845de6e71ff04d93d56715192e1..27087d2385841acb84a6af7729789f134783e5c5 100644 --- a/SOL002/VNFIndicatorNotification-API/VnfIndicatorNotification.robot +++ b/SOL002/VNFIndicatorNotification-API/VnfIndicatorNotification.robot @@ -16,7 +16,7 @@ VNF Indicator Value Change Notification ... Test title: VNF Indicator Value Change Notification ... Test objective: The objective is to test the dispatch of VNF Indicator Value Change Notification when new indicator values are available in the VNF, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF is instantiated, and a subscription for indicator value change notifications is available in the VNF. - ... Reference: clause 8.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 8.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 ... Config ID: Config_prod_VNF ... Applicability: none ... Post-Conditions: none diff --git a/SOL002/VNFLifecycleManagement-API/ApiVersion.robot b/SOL002/VNFLifecycleManagement-API/ApiVersion.robot new file mode 100644 index 0000000000000000000000000000000000000000..d3ea1bbe468ab1303db576b41da03500df000237 --- /dev/null +++ b/SOL002/VNFLifecycleManagement-API/ApiVersion.robot @@ -0,0 +1,211 @@ +*** Settings *** +Resource environment/variables.txt +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library DependencyLibrary +Library JSONLibrary +Library JSONSchemaLibrary schemas/ + +*** Test Cases *** +POST API Version - Method not implemented + [Documentation] Test ID: 6.3.5.20.1 + ... Test title: POST API version - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version + [Documentation] Test ID: 6.3.5.20.2 + ... Test title: GET API Version + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version - Method not implemented + [Documentation] Test ID: 6.3.5.20.3 + ... Test title: PUT API Version - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version - Method not implemented + [Documentation] Test ID: 6.3.5.20.4 + ... Test title: PATCH API Version - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version - Method not implemented + [Documentation] Test ID: 6.3.5.20.5 + ... Test title: DELETE API Version - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +POST API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.5.20.6 + ... Test title: POST API version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version with apiMajorVerion + [Documentation] Test ID: 6.3.5.20.7 + ... Test title: GET API Version with apiMajorVerion + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.5.20.8 + ... Test title: PUT API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.5.20.9 + ... Test title: PATCH API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.5.20.10 + ... Test title: DELETE API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +*** Keywords *** +POST API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +POST API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check HTTP Response Status Code Is + [Arguments] ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} + Log Status code validated + +Check HTTP Response Body Json Schema Is + [Arguments] ${input} + ${schema} = Catenate ${input} .schema.json + Validate Json ${schema} ${response['body']} + Log Json Schema Validation OK \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/CancelOperationTask.robot b/SOL002/VNFLifecycleManagement-API/CancelOperationTask.robot index 74e8892460f85c7f5bccb4f64206548bf953cb64..2709d940cdae634bf5196d4f1ea7fffaf2f58906 100644 --- a/SOL002/VNFLifecycleManagement-API/CancelOperationTask.robot +++ b/SOL002/VNFLifecycleManagement-API/CancelOperationTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library DependencyLibrary Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -14,7 +14,7 @@ Post Cancel operation task ... Test title: POST Cancel operation task ... Test objective: The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed or rolled back, i.e. the "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. ... Pre-conditions: the "VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. - ... Reference: clause 5.4.17.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -24,10 +24,10 @@ Post Cancel operation task Post Cancel operation task Conflict [Documentation] Test ID: 6.3.5.16.2 - ... Test title: POST Cancel operation task + ... Test title: POST Cancel operation task Conflict ... Test objective: The POST method is NOT cancelling an ongoing VNF lifecycle operation due to the fact that the VNF instance resource is not in STARTING, PROCESSING or ROLLING_BACK state ... Pre-conditions: operation is not in STARTING, PROCESSING or ROLLING_BACK state - ... Reference: clause 5.4.17.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -37,11 +37,11 @@ Post Cancel operation task Conflict Post Cancel operation task Not Found # TODO: Need to create a vnfInstance which's instantiatedVnfInfo.scaleStatus is absent - [Documentation] Test ID: 6.3.5.16.2 + [Documentation] Test ID: 6.3.5.16.3 ... Test title: POST Cancel operation task ... Test objective: The objective is to test that POST method cannot cancel a VNF lifecycle operation because the resource is not found ... Pre-conditions: - ... Reference: clause 5.4.17.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.17.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -49,11 +49,11 @@ Post Cancel operation task Not Found Check HTTP Response Status Code Is 404 GET Cancel operation task - Method not implemented - [Documentation] Test ID: 6.3.5.16.3 + [Documentation] Test ID: 6.3.5.16.4 ... Test title: GET Cancel operation task - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.17.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.17.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -61,11 +61,11 @@ GET Cancel operation task - Method not implemented Check HTTP Response Status Code Is 405 PUT Cancel operation task - Method not implemented - [Documentation] Test ID: 6.3.5.16.3 + [Documentation] Test ID: 6.3.5.16.5 ... Test title: PUT Cancel operation task - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.17.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.17.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -73,11 +73,11 @@ PUT Cancel operation task - Method not implemented Check HTTP Response Status Code Is 405 PATCH Cancel operation task - Method not implemented - [Documentation] Test ID: 6.3.5.16.4 + [Documentation] Test ID: 6.3.5.16.6 ... Test title: PATCH Cancel operation task - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.17.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.17.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -85,11 +85,11 @@ PATCH Cancel operation task - Method not implemented Check HTTP Response Status Code Is 405 DELETE Cancel operation task - Method not implemented - [Documentation] Test ID: 6.3.5.16.5 + [Documentation] Test ID: 6.3.5.16.7 ... Test title: DELETE Cancel operation task - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.17.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.17.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none diff --git a/SOL002/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot b/SOL002/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot index 6db82b4e1bca3b5cf7c776b769a062a4904f2ab8..7e73154a70d1f239db07ff86af81870237c4f43c 100644 --- a/SOL002/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot +++ b/SOL002/VNFLifecycleManagement-API/ChangeExternalVNFConnectivityTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -13,7 +13,7 @@ POST Change external VNF connectivity ... Test title: POST Change external VNF connectivity ... Test objective: The objective is to test that POST method trigger a change in VNF external connectivity ... Pre-conditions: none - ... Reference: clause 5.4.11.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.11.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -26,7 +26,7 @@ GET Change external VNF connectivity - Method not implemented ... Test title: GET Change external VNF connectivity - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.11.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.11.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ PUT Change external VNF connectivity - Method not implemented ... Test title: PUT Change external VNF connectivity - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.11.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.11.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -50,7 +50,7 @@ PATCH Change external VNF connectivity - Method not implemented ... Test title: PATCH Change external VNF connectivity - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.11.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.11.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -62,7 +62,7 @@ DELETE Change external VNF connectivity - Method not implemented ... Test title: DELETE Change external VNF connectivity - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.11.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.11.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none diff --git a/SOL002/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot b/SOL002/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot index d4c3ba81907dcec239b32b12ab988f52e4136f63..a63561402b692069b5585b69279521171e458a55 100644 --- a/SOL002/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot +++ b/SOL002/VNFLifecycleManagement-API/ChangeVNFFlavourTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -13,7 +13,7 @@ POST Change deployment flavour of a vnfInstance ... Test title: POST Change deployment flavour of a vnfInstance ... Test objective: The objective is to test that POST method trigger a change in VNF deployment flavour ... Pre-conditions: none - ... Reference: clause 5.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: in response header Location shall not be null @@ -26,7 +26,7 @@ POST Change deployment flavour of a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Change deployment flavour of a vnfInstance Conflict (Not-Instantiated) ... Test objective: The objective is to test that POST method cannot trigger a change in VNF deployment flavour because of a conflict with the state of the VNF instance resource. ... Pre-conditions: VNF instance resource is not in NOT-INSTANTIATED state - ... Reference: clause 5.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -40,7 +40,7 @@ POST Change deployment flavour of a vnfInstance Not Found ... Test title: POST Change deployment flavour of a vnfInstance Not Found ... Test objective: The objective is to test that POST method cannot trigger a change in VNF deployment flavour because the VNF instance resource is not found. ... Pre-conditions: VNF instance resource is not in NOT-INSTANTIATED state - ... Reference: clause 5.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.7.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -54,7 +54,7 @@ GET Change deployment flavour VNFInstance - Method not implemented ... Test title: GET Change deployment flavour VNFInstance - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.7.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.7.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -66,7 +66,7 @@ PUT Change deployment flavour VNFInstance - Method not implemented ... Test title: PUT Change deployment flavour VNFInstance - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.7.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.7.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -75,10 +75,10 @@ PUT Change deployment flavour VNFInstance - Method not implemented PATCH Change deployment flavour VNFInstance - Method not implemented [Documentation] Test ID: 6.3.5.6.6 - ... Test title: PATCH Cancel operation task - Method not implemented + ... Test title: PATCH Change deployment flavour VNFInstance - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.7.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.7.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -90,7 +90,7 @@ DELETE Change deployment flavour VNFInstance - Method not implemented ... Test title: DELETE Change deployment flavour VNFInstance - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.7.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.7.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none diff --git a/SOL002/VNFLifecycleManagement-API/FailOperationTask.robot b/SOL002/VNFLifecycleManagement-API/FailOperationTask.robot index 34ec43af9fce5b7c2e93b80fe615f3f454881210..bbd7011d87e9822bd0639991f5b1aff3efde03fa 100644 --- a/SOL002/VNFLifecycleManagement-API/FailOperationTask.robot +++ b/SOL002/VNFLifecycleManagement-API/FailOperationTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library DependencyLibrary Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -12,7 +12,7 @@ POST Fail operation task ... Test title: POST Fail operation task ... Test objective: The objective is to test that POST method mark as "finally failed" a VNF lifecycle operation if that operation has experienced a temporary failure ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: clause 5.4.16.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ POST Fail operation task Conflict (Not-FAILED_TEMP) ... Test title: POST Fail operation task Conflict (Not-FAILED_TEMP) ... Test objective: The objective is to test that POST method cannot mark as "finally failed" a VNF lifecycle operation if that operation has experienced a temporary failure ... Pre-conditions: the "VNF LCM operation occurrence" resource is not in "FAILED_TEMP" state. - ... Reference: clause 5.4.16.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -41,7 +41,7 @@ POST Fail operation task Not Found ... Test title: POST Fail operation task Not Found ... Test objective: The objective is to test that POST method cannot mark as "finally failed" a VNF lifecycle operation because the operation is not supported ... Pre-conditions: - ... Reference: clause 5.4.16.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.16.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -53,7 +53,7 @@ GET Fail operation task - Method not implemented ... Test title: GET Fail operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.16.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.16.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -65,7 +65,7 @@ PUT Fail operation task - Method not implemented ... Test title: PUT Fail operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.16.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.16.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -77,7 +77,7 @@ PATCH Fail operation task - Method not implemented ... Test title: PATCH Fail operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.16.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.16.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -89,7 +89,7 @@ DELETE Fail operation task - Method not implemented ... Test title: DELETE Fail operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.16.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.16.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: VNF instance not deleted diff --git a/SOL002/VNFLifecycleManagement-API/HealVNFTask.robot b/SOL002/VNFLifecycleManagement-API/HealVNFTask.robot index 35532cfa51dd1b663cd940a4ca6cb9607fb26cf9..b05b9eeea0ad87cf55df878b40529c18ef5b77ec 100644 --- a/SOL002/VNFLifecycleManagement-API/HealVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/HealVNFTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -13,7 +13,7 @@ POST Heal a vnfInstance ... Test title: POST Heal a vnfInstance ... Test objective: The objective is to test that POST method heal a VNF instance ... Pre-conditions: none - ... Reference: clause 5.4.9.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -27,7 +27,7 @@ POST Heal a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Heal a vnfInstance (Not-Instantiated) ... Test objective: The objective is to test that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. ... Pre-conditions: the VNF instance resource is in NOT-INSTANTIATED state - ... Reference: clause 5.4.9.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -41,7 +41,7 @@ POST Heal a vnfInstance Not Found ... Test title: POST Heal a vnfInstance Not Found ... Test objective: The objective is to test that the operation cannot be executed because the VNF instance resource is not found. ... Pre-conditions: the VNF instance resource is not existing - ... Reference: clause 5.4.9.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -54,7 +54,7 @@ GET Heal VNFInstance - Method not implemented ... Test title: GET Heal a vnfInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.9.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -66,7 +66,7 @@ PUT Heal VNFInstance - Method not implemented ... Test title: PUT Heal a vnfInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.9.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -78,7 +78,7 @@ PATCH Heal VNFInstance - Method not implemented ... Test title: PATCH Heal a vnfInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.9.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: @@ -90,7 +90,7 @@ DELETE Heal VNFInstance - Method not implemented ... Test title: DELETE Heal a vnfInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.9.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: diff --git a/SOL002/VNFLifecycleManagement-API/IndividualSubscription.robot b/SOL002/VNFLifecycleManagement-API/IndividualSubscription.robot index 77ec9c3ddeb67f6fc7b2459af3d92d727c1236df..887c31e3de37ba13e3f7bbf3c64c53aef2891bd2 100644 --- a/SOL002/VNFLifecycleManagement-API/IndividualSubscription.robot +++ b/SOL002/VNFLifecycleManagement-API/IndividualSubscription.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -11,7 +11,7 @@ POST Individual Subscription - Method not implemented ... Test title: POST Individual Subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.19.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.19.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -23,7 +23,7 @@ GET Individual Subscription ... Test title: GET Individual Subscription ... Test objective: The objective is to test the Get individual subscription ... Pre-conditions: none - ... Reference: clause 5.4.19.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.19.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ PUT an individual subscription - Method not implemented ... Test title: PUT Individual Subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.19.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.19.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -48,7 +48,7 @@ PATCH an individual subscription - Method not implemented ... Test title: PATCH Individual Subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.19.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.19.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -60,7 +60,7 @@ DELETE an individual subscription ... Test title: DELETE Individual Subscription - Method not implemented ... Test objective: The objective is to test that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.19.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.19.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none diff --git a/SOL002/VNFLifecycleManagement-API/IndividualVNFInstance.robot b/SOL002/VNFLifecycleManagement-API/IndividualVNFInstance.robot index 9faeab3c13ddb1016e113693401a32afe52b150c..b4c84b814bb37029c6c049103912aea2e4a5d8b5 100644 --- a/SOL002/VNFLifecycleManagement-API/IndividualVNFInstance.robot +++ b/SOL002/VNFLifecycleManagement-API/IndividualVNFInstance.robot @@ -2,7 +2,7 @@ # Suite setup Expect spec SOL002-VNFLifecycleManagement-API.yaml Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library DependencyLibrary Library JSONLibrary @@ -18,7 +18,7 @@ POST Individual VNFInstance - Method not implemented ... Test title: POST Individual VNFInstance - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.3.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.3.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -30,21 +30,20 @@ GET Information about an individual VNF Instance ... Test title: GET Information about an individual VNF Instance ... Test objective: The objective is to create a new VNF instance resource ... Pre-conditions: none - ... Reference: clause 5.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: GET individual vnfInstance Check HTTP Response Status Code Is 200 Check HTTP Response Body Json Schema Is vnfInstance - SET etag PUT Individual VNFInstance - Method not implemented [Documentation] Test ID: 6.3.5.2.3 ... Test title: PUT Individual VNFInstance - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.3.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.3.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance not modified @@ -56,7 +55,7 @@ PATCH Individual VNFInstance ... Test title: PATCH Individual VNFInstance ... Test objective: This method modifies an individual VNF instance resource ... Pre-conditions: none - ... Reference: clause 5.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance modified @@ -69,7 +68,7 @@ PATCH Individual VNFInstance Precondition failed ... Test title: PATCH Individual VNFInstance Precondition failed ... Test objective: The objective is to create a new VNF instance resource ... Pre-conditions: 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 - ... Reference: clause 5.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance not modified @@ -80,9 +79,9 @@ PATCH Individual VNFInstance Precondition failed PATCH Individual VNFInstance Conflict [Documentation] Test ID: 6.3.5.2.6 ... Test title: PATCH Individual VNFInstance Conflict - ... Test objective: The objective is to create a new VNF instance resource + ... Test objective: The objective is to verify that modification operation cannot be executed currently, due to a conflict with the state of the VNF instance resource because another LCM Operation is ongoing. ... Pre-conditions: none - ... Reference: clause 5.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance not modified @@ -95,7 +94,7 @@ DELETE Individual VNFInstance ... Test title: DELETE Individual VNFInstance ... Test objective: The objective is to delete a VNF instance ... Pre-conditions: none - ... Reference: clause 5.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance deleted @@ -104,10 +103,10 @@ DELETE Individual VNFInstance DELETE Individual VNFInstance Conflict [Documentation] Test ID: 6.3.5.2.8 - ... Test title: DELETE Individual VNFInstance - ... Test objective: The objective is to verify that The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. + ... Test title: DELETE Individual VNFInstance Conflict + ... Test objective: The objective is to verify that The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. ... Pre-conditions: VNF instance resource is in INSTANTIATED state - ... Reference: clause 5.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -136,7 +135,4 @@ Launch another LCM operation Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} - Integer response status 202 -SET etag - ${etag} Output response headers ETag - Set Suite Variable ${original_etag} ${etag} + Integer response status 202 diff --git a/SOL002/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot b/SOL002/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot index 8708a7b31a02401f2008eafab7ee99ad3cbab892..6d7ab224dbee89dee18c33178a6cdfe335c421e4 100644 --- a/SOL002/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot +++ b/SOL002/VNFLifecycleManagement-API/IndividualVnfLcmOperationOccurence.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library JSONLibrary Library JSONSchemaLibrary schemas/ *** Test Cases *** @@ -10,7 +10,7 @@ Post Individual VNF LCM OP occurrences - Method not implemented ... Test title: Post Individual VNF LCM OP occurrences - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.13.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.13.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -22,7 +22,7 @@ Get status information about multiple VNF instances ... Test title: Get status information about multiple VNF instances ... Test objective: The objective is to test that this method retrieve status information about a VNF lifecycle management operation occurrence ... Pre-conditions: none - ... Reference: clause 5.4.13.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.13.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -32,10 +32,10 @@ Get status information about multiple VNF instances PUT status information about multiple VNF instances - Method not implemented [Documentation] Test ID: 6.3.5.12.3 - ... Test title: Put Individual VNF LCM OP occurrences - Method not implemented + ... Test title: PUT status information about multiple VNF instances - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.13.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.13.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -44,10 +44,10 @@ PUT status information about multiple VNF instances - Method not implemented PATCH status information about multiple VNF instances - Method not implemented [Documentation] Test ID: 6.3.5.12.4 - ... Test title: Patch Individual VNF LCM OP occurrences - Method not implemented + ... Test title: PATCH status information about multiple VNF instances - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.13.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.13.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -56,12 +56,12 @@ PATCH status information about multiple VNF instances - Method not implemented DELETE status information about multiple VNF instances - Method not implemented [Documentation] Test ID: 6.3.5.12.5 - ... Test title: Delete Individual VNF LCM OP occurrences - Method not implemented + ... Test title: DELETE status information about multiple VNF instances - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.13.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.13.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none Delete multiple VNF instances - Check HTTP Response Status Code Is 405 \ No newline at end of file + Check HTTP Response Status Code Is 405 diff --git a/SOL002/VNFLifecycleManagement-API/InstantiateVNFTask.robot b/SOL002/VNFLifecycleManagement-API/InstantiateVNFTask.robot index ce6550a8a37b2945d4e1c4e90fcd793b8908aedc..d1b1078b7abf162cab678bcdc28fe69b81c3d9aa 100644 --- a/SOL002/VNFLifecycleManagement-API/InstantiateVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/InstantiateVNFTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library DependencyLibrary Library OperatingSystem Library JSONLibrary @@ -15,7 +15,7 @@ POST Instantiate a vnfInstance ... Test title: POST Instantiate a vnfInstance ... Test objective: The objective is to instantiate a VNF instance ... Pre-conditions: none - ... Reference: clause 5.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -28,7 +28,7 @@ POST Instantiate a vnfInstance Conflict ... Test title: POST Instantiate a vnfInstance Conflict ... Test objective: The objective is to verify that the instantiation of the vnf cannot be executed currently, due to a conflict with the state of the VNF instance resource. ... Pre-conditions: VNF instance resource is in INSTANTIATED state - ... Reference: clause 5.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -41,7 +41,7 @@ GET Instantiate VNFInstance - Method not implemented ... Test title: GET Instantiate VNFInstance - Method not implemented ... Test objective: The objective is to test that GET method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -53,7 +53,7 @@ PUT Instantiate VNFInstance - Method not implemented ... Test title: PUT Instantiate VNFInstance - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance not modified @@ -65,7 +65,7 @@ PATCH Instantiate VNFInstance - Method not implemented ... Test title: PATCH Instantiate VNFInstance - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance not modified @@ -77,7 +77,7 @@ DELETE Instantiate VNFInstance - Method not implemented ... Test title: DELETE Instantiate VNFInstance - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.4.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.4.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance not deleted diff --git a/SOL002/VNFLifecycleManagement-API/NotificationEndpoint.robot b/SOL002/VNFLifecycleManagement-API/NotificationEndpoint.robot index 3f2d02b75da30147457f6abc38f2c6ddd14fcb61..9dcee284412fcca4439113e7bfc7789a780f3d6b 100644 --- a/SOL002/VNFLifecycleManagement-API/NotificationEndpoint.robot +++ b/SOL002/VNFLifecycleManagement-API/NotificationEndpoint.robot @@ -13,7 +13,7 @@ VNF LCM Operation Occurrence Start Notification ... Test title: VNF LCM Operation Occurrence Start Notification ... Test objective: The objective is to test the dispatch of VNF LCM Operation Occurrence Start Notification when a new VNF LCM operation is started in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A subscription for VNF LCM Operation Occurrence notifications is available in the VNFM. - ... Reference: clause 5.4.20.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ VNF LCM Operation Occurrence Result Notification ... Test title: VNF LCM Operation Occurrence Result Notification ... Test objective: The objective is to test the dispatch of VNF LCM Operation Occurrence Result Notification when a VNF LCM operation is completed in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: An VNF LCM operation is in progress, and a subscription for VNF LCM Operation Occurrence notifications is available in the VNFM. - ... Reference: clause 5.4.20.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -41,7 +41,7 @@ VNF Identifier Creation Notification ... Test title: VNF Identifier Creation Notification ... Test objective: The objective is to test the dispatch of VNF Identifier Creation Notification when a new VNF instance resource is created in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A subscription for VNF identifier creation notifications is available in the VNFM. - ... Reference: clause 5.4.20.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.20.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -54,7 +54,7 @@ VNF Identifier Deletion Notification ... Test title: VNF Identifier Deletion Notification ... Test objective: The objective is to test the dispatch of VNF Identifier Deletion Notification when a VNF instance resource is deleted in the VNFM, and perform a JSON schema and content validation of the delivered notification. The action that triggers the notification under test is an explicit test step, but it is not performed by the test system. ... Pre-conditions: A VNF instance resource is created, and a subscription for VNF identifier creation notifications is available in the VNFM. - ... Reference: clause 6.4.18.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.18.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none diff --git a/SOL002/VNFLifecycleManagement-API/OperateVNFTask.robot b/SOL002/VNFLifecycleManagement-API/OperateVNFTask.robot index d8671ea1e5965428789ca5f307e6f3bff923b33a..4e4c12817e002b74be2d22aad547c7c255a480e6 100644 --- a/SOL002/VNFLifecycleManagement-API/OperateVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/OperateVNFTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -13,7 +13,7 @@ POST Operate a vnfInstance ... Test title: POST Operate a vnfInstance ... Test objective: The objective is to test that POST method operate a VNF instance ... Pre-conditions: none - ... Reference: clause 5.4.10.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -26,7 +26,7 @@ POST Operate a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Operate a vnfInstance Conflict (Not-Instantiated) ... Test objective: The objective is to test that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. ... Pre-conditions: the VNF instance resource is in NOT-INSTANTIATED state - ... Reference: clause 5.4.10.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -40,7 +40,7 @@ POST Operate a vnfInstance Not Found ... Test title: POST Operate a vnfInstance Not Found ... Test objective: The objective is to test that the operation cannot be executed currently, because the resource is not existing ... Pre-conditions: the VNF instance resource is in not existing - ... Reference: clause 5.4.10.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -53,7 +53,7 @@ GET Operate VNFInstance - Method not implemented ... Test title: GET Operate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.10.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.10.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -65,7 +65,7 @@ PUT Operate VNFInstance - Method not implemented ... Test title: PUT Operate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.10.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.10.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -77,7 +77,7 @@ PATCH Operate VNFInstance - Method not implemented ... Test title: PATCH Operate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.10.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.10.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -89,7 +89,7 @@ DELETE Operate VNFInstance - Method not implemented ... Test title: DELETE Operate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.10.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.10.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: diff --git a/SOL002/VNFLifecycleManagement-API/RetryOperationTask.robot b/SOL002/VNFLifecycleManagement-API/RetryOperationTask.robot index c3b9f73e33b62980f1ce8ecefdb607eeca86e283..3b85e59434fe59ee2ede4619d96d3fe1d3e52f8f 100644 --- a/SOL002/VNFLifecycleManagement-API/RetryOperationTask.robot +++ b/SOL002/VNFLifecycleManagement-API/RetryOperationTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library DependencyLibrary Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -14,7 +14,7 @@ POST Retry operation task ... Test title: POST Retry operation task ... Test objective: The objective is to test that POST method The POST method initiates retrying a VNF lifecycle operation if that operation has experienced a temporary failure ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: clause 5.4.14.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.14.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -28,7 +28,7 @@ POST Retry operation task Conflict (Not-FAILED_TEMP) ... Test title: POST Retry operation task Conflict (Not-FAILED_TEMP) ... Test objective: The objective is to test that the retry operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. (i.e. the VNF instance resource is not in FAILED_TEMP state) ... Pre-conditions: the "VNF LCM operation occurrence" resource is not in "FAILED_TEMP" state. - ... Reference: clause 5.4.14.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.14.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -43,7 +43,7 @@ POST Retry operation task Not Found ... Test title: POST Retry operation task Not Found ... Test objective: The objective is to test that the retry operation cannot be executed because the operation is not supported ... Pre-conditions: - ... Reference: clause 5.4.14.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.14.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -55,7 +55,7 @@ GET Retry operation task - Method not implemented ... Test title: GET Retry operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.9.14.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.14.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -67,7 +67,7 @@ PUT Retry operation task - Method not implemented ... Test title: PUT Retry operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.9.14.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.14.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -79,7 +79,7 @@ PATCH Retry operation task - Method not implemented ... Test title: PATCH Retry operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.9.14.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.14.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -91,7 +91,7 @@ DELETE Retry operation task - Method not implemented ... Test title: DELETE Retry operation task- Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.9.14.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.9.14.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: diff --git a/SOL002/VNFLifecycleManagement-API/RollbackOperationTask.robot b/SOL002/VNFLifecycleManagement-API/RollbackOperationTask.robot index a80884512fc3bdf6ebd4e24037d29c5d989738a7..50e8a469ceed5026ddd21877f6545a3673638df4 100644 --- a/SOL002/VNFLifecycleManagement-API/RollbackOperationTask.robot +++ b/SOL002/VNFLifecycleManagement-API/RollbackOperationTask.robot @@ -1,8 +1,8 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -Library DependencyLibrary +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library DependencyLibrary Library JSONLibrary Library JSONSchemaLibrary schemas/ Documentation This task resource represents the "Rollback operation" operation. The client can use this resource to initiate rolling back a VNF lifecycle operation @@ -14,7 +14,7 @@ POST Rollback operation task ... Test title: POST Rollback operation task ... Test objective: The objective is to test that POST method The POST method initiates rollback a VNF lifecycle operation if that operation has experienced a temporary failure ... Pre-conditions: the "VNF LCM operation occurrence" resource is in "FAILED_TEMP" state. - ... Reference: clause 5.4.15.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -28,7 +28,7 @@ POST Rollback operation task Conflict (Not-FAILED_TEMP) ... Test title: POST Rollback operation task Conflict (Not-FAILED_TEMP) ... Test objective: The objective is to test that POST method The POST method initiates rollback a VNF lifecycle operation if that operation has experienced a temporary failure ... Pre-conditions: the "VNF LCM operation occurrence" resource is not in "FAILED_TEMP" state. - ... Reference: clause 5.4.15.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -43,7 +43,7 @@ POST Rollback operation task Not Found ... Test title: POST Rollback operation task Not Found ... Test objective: The objective is to test that the retry operation cannot be executed because the operation is not supported ... Pre-conditions: - ... Reference: clause 5.4.15.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.15.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -55,7 +55,7 @@ GET Rollback operation task - Method not implemented ... Test title: GET Rollback operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.15.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.15.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -67,7 +67,7 @@ PUT Rollback operation task - Method not implemented ... Test title: PUT Rollback operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.15.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.15.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -79,7 +79,7 @@ PATCH Rollback operation task - Method not implemented ... Test title: PATCH Rollback operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.15.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.15.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -91,7 +91,7 @@ DELETE Rollback operation task - Method not implemented ... Test title: DELETE Rollback operation task - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.15.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.15.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: diff --git a/SOL002/VNFLifecycleManagement-API/SOL002-VNFLifecycleManagement-API.json b/SOL002/VNFLifecycleManagement-API/SOL002-VNFLifecycleManagement-API.json deleted file mode 100644 index ea5dcd975c89292d564e4b5318f9d448a11e7f24..0000000000000000000000000000000000000000 --- a/SOL002/VNFLifecycleManagement-API/SOL002-VNFLifecycleManagement-API.json +++ /dev/null @@ -1,24199 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "1.1.1", - "title": "SOL002 - VNF Configuration interface", - "description": "VNF Configuration interface of ETSI NFV SOL002\n\nIMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to. In case of discrepancies the published ETSI Group Specification takes precedence.\n\nPlease report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=---\n", - "license": { - "name": "ETSI Forge copyright notice", - "url": "https://forge.etsi.org/etsi-forge-copyright-notice.txt" - } - }, - "externalDocs": { - "description": "ETSI GS NFV-SOL 002 V2.4.1", - "url": "http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf" - }, - "basePath": "/vnfconfig/v1", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/vnf_instances": { - "post": { - "description": "The POST method creates a new VNF instance resource.", - "parameters": [ - { - "name": "createVnfRequest", - "description": "The VNF creation parameters", - "in": "body", - "required": true, - "schema": { - "type": "object", - "required": [ - "vnfdId" - ], - "properties": { - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Human-readable name of the VNF instance to be created.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance to be created.\n", - "type": "string" - } - } - } - }, - { - "name": "Accept", - "description": "Content-Types that are acceptable for the response. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Content-Type", - "description": "The MIME type of the body of the request. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "A VNF Instance identifier was created successfully", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Created\nChallenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "416": { - "description": "Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "422": { - "description": "Unprocessable Entity\nIf 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. NOTE 2: This error response code is only applicable for methods that have a request body.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "get": { - "description": "The GET method queries information about multiple VNF instances.\n", - "parameters": [ - { - "name": "Accept", - "description": "Content-Types that are acceptable for the response. Reference: IETF RFC 7231\n", - "in": "header", - "required": true, - "type": "string" - }, - { - "name": "Authorization", - "description": "The authorization token for the request. Reference: IETF RFC 7235\n", - "in": "header", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK\nInformation about zero or more VNF instances was queried successfully. The response body shall contain representations of zero or more VNF instances.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "type": "array", - "items": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nIt fhe request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "416": { - "description": "Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "Identifier of the VNF instance. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "get": { - "description": "Information about an individual VNF instance was queried successfully.\n", - "responses": { - "200": { - "description": "OK\nInformation about zero or more VNF instances was queried successfully. The response body shall contain representations of zero or more VNF instances.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "416": { - "description": "Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "patch": { - "description": "This method modifies an individual VNF instance resource. Changes to the VNF configurable properties are applied to the configuration in the VNF instance, and are reflected in the representation of this resource. Other changes are applied to the VNF instance information managed by the VNFM, and are reflected in the representation of this resource\n", - "parameters": [ - { - "name": "vnfInfoModifications", - "description": "Input parameters for VNF info modification", - "required": true, - "in": "body", - "schema": { - "description": "This type represents attribute modifications that were performed on an \"Individual VNF instance\" resource. The attributes that can be included consist of those requested to be modified explicitly in the \"VnfInfoModificationRequest\" data structure, and additional attributes of the \"VnfInstance\" data structure that were modified implicitly e.g. when modifying the referenced VNF package.\n", - "type": "object", - "properties": { - "vnfInstanceName": { - "description": "If present, this attribute signals modifications of the \"vnfInstanceName\" attribute in \"VnfInstance\".\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "If present, this attribute signals modifications of the \"vnfInstanceDescription\" attribute in \"VnfInstance\".\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "vimConnectionInfo": { - "description": "If present, this attribute signals modifications of certain entries in the \"vimConnectionInfo\" attribute array in \"VnfInstance\".\n", - "type": "array", - "items": { - "description": "This type represents parameters to connect to a VIM for managing the resources of a VNF instance. This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters for a VIM may be configured into the VNFM by means outside the scope of the present document, and bound to the identifier of that VIM.\n", - "type": "object", - "required": [ - "id", - "vimType" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimType": { - "description": "Discriminator for the different types of the VIM information. The value of this attribute determines the structure of the \"interfaceInfo\" and \"accessInfo\" attributes, based on the type of the VIM. The set of permitted values is expected to change over time as new types or versions of VIMs become available. The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in Annex C of SOL003.\n", - "type": "string" - }, - "interfaceInfo": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "accessInfo": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extra": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfPkgId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "If present, this attribute signals modifications of the \"vnfProvider\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", - "type": "string" - }, - "vnfProductName": { - "description": "If present, this attribute signals modifications of the \"vnfProductName\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - } - } - } - } - ], - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but the processing has not been completed. On success, the HTTP response shall include a \"Location\" HTTP header that contains the URI of the newly-created \"VNF LCM operation occurrence\" resource corresponding to the operation.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIt fhe request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that another LCM operation is ongoing. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "412": { - "description": "Precondition Failed\nA 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "delete": { - "description": "This method deletes an individual VNF instance resource.\n", - "responses": { - "204": { - "description": "No Content\nThe VNF instance resource and the associated VNF identifier were deleted successfully. The response body shall be empty.\n", - "headers": { - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - } - }, - "400": { - "description": "Bad Request\nIt fhe request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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 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. 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is in INSTANTIATED state. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "412": { - "description": "Precondition Failed\nA 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}/instantiate": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "Identifier of the VNF instance. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "post": { - "description": "The POST method instantiates a VNF instance.\n", - "parameters": [ - { - "name": "InstantiateVnfRequest", - "description": "Parameters for the VNF instantiation.", - "in": "body", - "required": true, - "schema": { - "type": "object", - "required": [ - "flavourId" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "instantiationLevelId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "extVirtualLinks": { - "description": "Information about external VLs to connect the VNF to.\n", - "type": "array", - "items": { - "description": "This type represents an external VL.\n", - "type": "object", - "required": [ - "id", - "resourceId", - "extCps" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "extCps": { - "description": "External CPs of the VNF to be connected to this external VL.\n", - "type": "array", - "items": { - "description": "This type represents configuration information for external CPs created from a CPD.\n", - "type": "object", - "required": [ - "cpdId" - ], - "properties": { - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "cpConfig": { - "description": "List of instance data that need to be configured on the CP instances created from the respective CPD.\n", - "type": "array", - "items": { - "description": "This type represents an externally provided link port or network address information per instance of an external connection point. In case a link port is provided, the VNFM shall use that link port when connecting the external CP to the external VL. In a link port is not provided, the VNFM shall create a link port on the external VL, and use that link port to connect the external CP to the external VL.\n", - "type": "object", - "properties": { - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "linkPortId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "cpProtocolData": { - "description": "Parameters for configuring the network protocols on the link port that connects the CP to a VL. The following conditions apply to the attributes \"linkPortId\" and \"cpProtocolData\": * The \"linkPortId\" and \"cpProtocolData\" attributes shall both be absent for the deletion of an existing external CP instance\n addressed by cpInstanceId. \n* At least one of these attributes shall be present for a to-be-created external CP instance or an existing external\n CP instance.\n* If the \"linkPortId\" attribute is absent, the VNFM shall create a link port.\n* If the \"cpProtocolData\" attribute is absent, the \"linkPortId\" attribute shall be provided referencing a pre-created link port,\n and the VNFM can use means outside the scope of the present\n document to obtain the pre-configured address information for the\n connection point from the resource representing the link port.\n* If both \"cpProtocolData\" and \"linkportId\" are provided, the API consumer shall ensure that the cpProtocolData can be used with the\n pre-created link port referenced by \"linkPortId\".\n", - "type": "array", - "items": { - "description": "This type represents network protocol data.\n", - "type": "object", - "required": [ - "layerProtocol" - ], - "properties": { - "layerProtocol": { - "description": "Identifier of layer(s) and protocol(s). This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n", - "type": "string", - "enum": [ - "IP_OVER_ETHERNET" - ] - }, - "ipOverEthernet": { - "description": "This type represents network address data for IP over Ethernet.\n", - "type": "object", - "properties": { - "macAddress": { - "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", - "type": "string", - "format": "MAC" - }, - "ipAddresses": { - "description": "List of IP addresses to assign to the CP instance. Each entry represents IP address data for fixed or dynamic IP address assignment per subnet. If this attribute is not present, no IP address shall be assigned.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n", - "type": "string", - "enum": [ - "IPV4", - "IPV6" - ] - }, - "fixedAddresses": { - "description": "Fixed addresses to assign (from the subnet defined by \"subnetId\" if provided). Exactly one of \"fixedAddresses\", \"numDynamicAddresses\" or \"ipAddressRange\" shall be present.\n", - "type": "array", - "items": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - }, - "numDynamicAddresses": { - "description": "Number of dynamic addresses to assign (from the subnet defined by \"subnetId\" if provided). Exactly one of \"fixedAddresses\", \"numDynamicAddresses\" or \"ipAddressRange\" shall be present.\n", - "type": "integer" - }, - "addressRange": { - "description": "An IP address range to be used, e.g. in case of egress connections. In case this attribute is present, IP addresses from the range will be used.\n", - "type": "object", - "required": [ - "minAddress", - "maxAddress" - ], - "properties": { - "minAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - }, - "maxAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - } - }, - "subnetId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - } - } - } - } - }, - "extLinkPorts": { - "description": "Externally provided link ports to be used to connect external connection points to this external VL. If this attribute is not present, the VNFM shall create the link ports on the external VL.\n", - "type": "array", - "items": { - "description": "This type represents an externally provided link port to be used to connect an external connection point to an external VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - } - } - } - } - } - } - }, - "extManagedVirtualLinks": { - "description": "Information about external VLs to connect the VNF to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "resourceId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Localization language of the VNF to be instantiated. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "additionalParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - ], - "responses": { - "200": { - "description": "OK\nInformation about zero or more VNF instances was queried successfully. The response body shall contain representations of zero or more VNF instances.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is in INSTANTIATED state. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "416": { - "description": "Requested Range Not Satisfiable\nThis code is returned if the requested byte range in the Range HTTP header is not present in the requested resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}/scale": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "Identifier of the VNF instance to be scaled. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "post": { - "description": "The POST method requests to scale a VNF instance resource incrementally.\n", - "parameters": [ - { - "name": "ScaleVnfRequest", - "description": "Parameters for the scale VNF operation.", - "in": "body", - "required": true, - "schema": { - "type": "object", - "required": [ - "type", - "aspectId" - ], - "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\n* SCALE_IN: removing VNFC instances from the VNF in order to release unused capacity.\n", - "type": "string", - "enum": [ - "SCALE_OUT", - "SCALE_IN" - ] - }, - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "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.\n", - "type": "integer", - "default": 1 - }, - "additionalParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - ], - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but the processing has not been completed. On success, the HTTP response shall include a \"Location\" HTTP header that contains the URI of the newly-created \"VNF LCM operation occurrence\" resource corresponding to the operation.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF instance represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, or that another lifecycle management operation is ongoing. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}/scale_to_level": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "Identifier of the VNF instance to be scaled to a target level. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "post": { - "description": "The POST method requests to scale a VNF instance resource to a target level.\n", - "parameters": [ - { - "name": "ScaleVnfToLevelRequest", - "description": "Parameters for the scale VNF to Level operation.", - "in": "body", - "required": true, - "schema": { - "description": "This type represents request parameters for the \"Scale VNF to Level\" operation.\n", - "type": "object", - "properties": { - "instantiationLevelId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleInfo": { - "description": "For each scaling aspect of the current deployment flavour, indicates the target scale level to which the VNF is to be scaled. Either the instantiationLevelId attribute or the scaleInfo attribute shall be included.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "additionalParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - ], - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but the processing has not been completed. On success, the HTTP response shall include a \"Location\" HTTP header that contains the URI of the newly-created \"VNF LCM operation occurrence\" resource corresponding to the operation.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF instance represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, or that another lifecycle management operation is ongoing. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}/change_flavour": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "The identifier of the VNF instance of which the deployment flavour is requested to be changed. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "post": { - "description": "The POST method changes the deployment flavour of a VNF instance.\n", - "parameters": [ - { - "name": "ChangeVnfFlavourRequest", - "description": "Parameters for the Change VNF Flavour operation.", - "in": "body", - "required": true, - "schema": { - "description": "This type represents request parameters for the \"Change VNF flavour\" operation.\n", - "type": "object", - "required": [ - "newFlavourId" - ], - "properties": { - "newFlavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "instantiationLevelId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "extVirtualLinks": { - "description": "Information about external VLs to connect the VNF to.\n", - "type": "array", - "items": { - "description": "This type represents an external VL.\n", - "type": "object", - "required": [ - "id", - "resourceId", - "extCps" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "extCps": { - "description": "External CPs of the VNF to be connected to this external VL.\n", - "type": "array", - "items": { - "description": "This type represents configuration information for external CPs created from a CPD.\n", - "type": "object", - "required": [ - "cpdId" - ], - "properties": { - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "cpConfig": { - "description": "List of instance data that need to be configured on the CP instances created from the respective CPD.\n", - "type": "array", - "items": { - "description": "This type represents an externally provided link port or network address information per instance of an external connection point. In case a link port is provided, the VNFM shall use that link port when connecting the external CP to the external VL. In a link port is not provided, the VNFM shall create a link port on the external VL, and use that link port to connect the external CP to the external VL.\n", - "type": "object", - "properties": { - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "linkPortId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "cpProtocolData": { - "description": "Parameters for configuring the network protocols on the link port that connects the CP to a VL. The following conditions apply to the attributes \"linkPortId\" and \"cpProtocolData\": * The \"linkPortId\" and \"cpProtocolData\" attributes shall both be absent for the deletion of an existing external CP instance\n addressed by cpInstanceId. \n* At least one of these attributes shall be present for a to-be-created external CP instance or an existing external\n CP instance.\n* If the \"linkPortId\" attribute is absent, the VNFM shall create a link port.\n* If the \"cpProtocolData\" attribute is absent, the \"linkPortId\" attribute shall be provided referencing a pre-created link port,\n and the VNFM can use means outside the scope of the present\n document to obtain the pre-configured address information for the\n connection point from the resource representing the link port.\n* If both \"cpProtocolData\" and \"linkportId\" are provided, the API consumer shall ensure that the cpProtocolData can be used with the\n pre-created link port referenced by \"linkPortId\".\n", - "type": "array", - "items": { - "description": "This type represents network protocol data.\n", - "type": "object", - "required": [ - "layerProtocol" - ], - "properties": { - "layerProtocol": { - "description": "Identifier of layer(s) and protocol(s). This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n", - "type": "string", - "enum": [ - "IP_OVER_ETHERNET" - ] - }, - "ipOverEthernet": { - "description": "This type represents network address data for IP over Ethernet.\n", - "type": "object", - "properties": { - "macAddress": { - "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", - "type": "string", - "format": "MAC" - }, - "ipAddresses": { - "description": "List of IP addresses to assign to the CP instance. Each entry represents IP address data for fixed or dynamic IP address assignment per subnet. If this attribute is not present, no IP address shall be assigned.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n", - "type": "string", - "enum": [ - "IPV4", - "IPV6" - ] - }, - "fixedAddresses": { - "description": "Fixed addresses to assign (from the subnet defined by \"subnetId\" if provided). Exactly one of \"fixedAddresses\", \"numDynamicAddresses\" or \"ipAddressRange\" shall be present.\n", - "type": "array", - "items": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - }, - "numDynamicAddresses": { - "description": "Number of dynamic addresses to assign (from the subnet defined by \"subnetId\" if provided). Exactly one of \"fixedAddresses\", \"numDynamicAddresses\" or \"ipAddressRange\" shall be present.\n", - "type": "integer" - }, - "addressRange": { - "description": "An IP address range to be used, e.g. in case of egress connections. In case this attribute is present, IP addresses from the range will be used.\n", - "type": "object", - "required": [ - "minAddress", - "maxAddress" - ], - "properties": { - "minAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - }, - "maxAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - } - }, - "subnetId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - } - } - } - } - }, - "extLinkPorts": { - "description": "Externally provided link ports to be used to connect external connection points to this external VL. If this attribute is not present, the VNFM shall create the link ports on the external VL.\n", - "type": "array", - "items": { - "description": "This type represents an externally provided link port to be used to connect an external connection point to an external VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - } - } - } - } - } - } - }, - "extManagedVirtualLinks": { - "description": "Information about external VLs to connect the VNF to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "resourceId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - } - } - } - }, - "additionalParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - ], - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but the processing has not been completed. On success, the HTTP response shall include a \"Location\" HTTP header that contains the URI of the newly-created \"VNF LCM operation occurrence\" resource corresponding to the operation.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF instance represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, or that another lifecycle management operation is ongoing. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}/terminate": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "The identifier of the VNF instance to be terminated. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "post": { - "description": "The POST method terminates a VNF instance.\n", - "parameters": [ - { - "name": "TerminateVnfRequest", - "description": "Parameters for the VNF termination.", - "in": "body", - "required": true, - "schema": { - "type": "object", - "required": [ - "terminationType" - ], - "properties": { - "terminationType": { - "description": "Indicates the type of termination is requested. Permitted values: * FORCEFUL: The VNFM will shut down the VNF and release the resources immediately after accepting the request.\n", - "type": "string", - "enum": [ - "FORCEFUL" - ] - }, - "additionalParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - ], - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but the processing has not been completed. On success, the HTTP response shall include a \"Location\" HTTP header that contains the URI of the newly-created \"VNF LCM operation occurrence\" resource corresponding to the operation.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, or that another lifecycle management operation is ongoing. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}/heal": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "Identifier of the VNF instance to be healed. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "post": { - "description": "The POST method requests to heal a VNF instance resource.\n", - "parameters": [ - { - "name": "HealVnfRequest", - "description": "Parameters for the Heal VNF operation.", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "cause": { - "description": "Indicates the reason why a healing procedure is required.\n", - "type": "string" - }, - "vnfcInstanceId": { - "description": "TBD", - "type": "string" - }, - "healScript": { - "description": "TBD", - "type": "string" - }, - "additionalParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - ], - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but the processing has not been completed. On success, the HTTP response shall include a \"Location\" HTTP header that contains the URI of the newly-created \"VNF LCM operation occurrence\" resource corresponding to the operation.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF instance represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, or that another lifecycle management operation is ongoing. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}/operate": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "Identifier of the VNF instance to be operated. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "post": { - "description": "The POST method changes the operational state of a VNF instance resource.\n", - "parameters": [ - { - "name": "OperateVnfRequest", - "description": "Parameters for the Operate VNF operation.", - "in": "body", - "required": true, - "schema": { - "description": "This type represents request parameters for the \"Operate VNF\" operation.\n", - "type": "object", - "required": [ - "changeStateTo" - ], - "properties": { - "changeStateTo": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "stopType": { - "description": "* FORCEFUL: The VNFM will stop the VNF immediately after accepting the request.\n* GRACEFUL: The VNFM will first arrange to take the VNF out of service after accepting the request. Once that operation is successful or once\n the timer value specified in the \"gracefulStopTimeout\" attribute\n expires, the VNFM will stop the VNF.\n", - "type": "string", - "enum": [ - "FORCEFUL", - "GRACEFUL" - ] - }, - "vnfcInstanceId": { - "description": "TBD", - "type": "string" - }, - "additionalParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - ], - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but the processing has not been completed. On success, the HTTP response shall include a \"Location\" HTTP header that contains the URI of the newly-created \"VNF LCM operation occurrence\" resource corresponding to the operation.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF instance represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is in NOT-INSTANTIATED state, or that another lifecycle management operation is ongoing. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_instances/{vnfInstanceId}/change_ext_vls": { - "parameters": [ - { - "name": "vnfInstanceId", - "description": "Identifier of the VNF instance of which the external connectivity is requested to be changed. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "post": { - "description": "The POST method changes the external connectivity of a VNF instance.\n", - "parameters": [ - { - "name": "ChangeExtVnfConnectivityRequest", - "description": "Parameters for the Change external VNF connectivity operation.\n", - "in": "body", - "required": true, - "schema": { - "description": "This type represents request parameters for the \"Change external VNF connectivity\" operation to modify the external connectivity of a VNF instance.\n", - "type": "object", - "required": [ - "extVirtualLinks" - ], - "properties": { - "extVirtualLinks": { - "description": "Information about external VLs to change (e.g. connect the VNF to).\n", - "type": "array", - "items": { - "description": "This type represents an external VL.\n", - "type": "object", - "required": [ - "id", - "resourceId", - "extCps" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "extCps": { - "description": "External CPs of the VNF to be connected to this external VL.\n", - "type": "array", - "items": { - "description": "This type represents configuration information for external CPs created from a CPD.\n", - "type": "object", - "required": [ - "cpdId" - ], - "properties": { - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "cpConfig": { - "description": "List of instance data that need to be configured on the CP instances created from the respective CPD.\n", - "type": "array", - "items": { - "description": "This type represents an externally provided link port or network address information per instance of an external connection point. In case a link port is provided, the VNFM shall use that link port when connecting the external CP to the external VL. In a link port is not provided, the VNFM shall create a link port on the external VL, and use that link port to connect the external CP to the external VL.\n", - "type": "object", - "properties": { - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "linkPortId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "cpProtocolData": { - "description": "Parameters for configuring the network protocols on the link port that connects the CP to a VL. The following conditions apply to the attributes \"linkPortId\" and \"cpProtocolData\": * The \"linkPortId\" and \"cpProtocolData\" attributes shall both be absent for the deletion of an existing external CP instance\n addressed by cpInstanceId. \n* At least one of these attributes shall be present for a to-be-created external CP instance or an existing external\n CP instance.\n* If the \"linkPortId\" attribute is absent, the VNFM shall create a link port.\n* If the \"cpProtocolData\" attribute is absent, the \"linkPortId\" attribute shall be provided referencing a pre-created link port,\n and the VNFM can use means outside the scope of the present\n document to obtain the pre-configured address information for the\n connection point from the resource representing the link port.\n* If both \"cpProtocolData\" and \"linkportId\" are provided, the API consumer shall ensure that the cpProtocolData can be used with the\n pre-created link port referenced by \"linkPortId\".\n", - "type": "array", - "items": { - "description": "This type represents network protocol data.\n", - "type": "object", - "required": [ - "layerProtocol" - ], - "properties": { - "layerProtocol": { - "description": "Identifier of layer(s) and protocol(s). This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n", - "type": "string", - "enum": [ - "IP_OVER_ETHERNET" - ] - }, - "ipOverEthernet": { - "description": "This type represents network address data for IP over Ethernet.\n", - "type": "object", - "properties": { - "macAddress": { - "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", - "type": "string", - "format": "MAC" - }, - "ipAddresses": { - "description": "List of IP addresses to assign to the CP instance. Each entry represents IP address data for fixed or dynamic IP address assignment per subnet. If this attribute is not present, no IP address shall be assigned.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n", - "type": "string", - "enum": [ - "IPV4", - "IPV6" - ] - }, - "fixedAddresses": { - "description": "Fixed addresses to assign (from the subnet defined by \"subnetId\" if provided). Exactly one of \"fixedAddresses\", \"numDynamicAddresses\" or \"ipAddressRange\" shall be present.\n", - "type": "array", - "items": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - }, - "numDynamicAddresses": { - "description": "Number of dynamic addresses to assign (from the subnet defined by \"subnetId\" if provided). Exactly one of \"fixedAddresses\", \"numDynamicAddresses\" or \"ipAddressRange\" shall be present.\n", - "type": "integer" - }, - "addressRange": { - "description": "An IP address range to be used, e.g. in case of egress connections. In case this attribute is present, IP addresses from the range will be used.\n", - "type": "object", - "required": [ - "minAddress", - "maxAddress" - ], - "properties": { - "minAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - }, - "maxAddress": { - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", - "type": "string", - "format": "IP" - } - } - }, - "subnetId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - } - } - } - } - }, - "extLinkPorts": { - "description": "Externally provided link ports to be used to connect external connection points to this external VL. If this attribute is not present, the VNFM shall create the link ports on the external VL.\n", - "type": "array", - "items": { - "description": "This type represents an externally provided link port to be used to connect an external connection point to an external VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - } - } - } - } - } - } - }, - "additionalParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - ], - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but the processing has not been completed. On success, the HTTP response shall include a \"Location\" HTTP header that contains the URI of the newly-created \"VNF LCM operation occurrence\" resource corresponding to the operation.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vnfdId", - "vnfProvider", - "vnfProductName", - "vnfSoftwareVersion", - "vnfdVersion", - "onboardedVnfPkgInfoId", - "instantiationState" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfInstanceName": { - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfProductName": { - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - }, - "onboardedVnfPkgInfoId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "instantiationState": { - "description": "The instantiation state of the VNF.\n", - "type": "string", - "enum": [ - "NOT_INSTANTIATED", - "INSTANTIATED" - ] - }, - "instantiatedVnfInfo": { - "type": "object", - "required": [ - "flavourId", - "vnfState" - ], - "properties": { - "flavourId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfState": { - "type": "string", - "enum": [ - "STARTED", - "STOPPED" - ] - }, - "scaleStatus": { - "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", - "type": "array", - "items": { - "required": [ - "aspectId", - "scaleLevel" - ], - "type": "object", - "properties": { - "aspectId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "scaleLevel": { - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", - "type": "integer" - } - } - } - }, - "extCpInfo": { - "description": "Information about the external CPs exposed by the VNF instance.\n", - "type": "array", - "minItems": 1, - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "addresses": { - "description": "List of network addresses that have been configured (statically or dynamically) on the CP.\n", - "type": "array", - "items": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - } - }, - "extVirtualLinkInfo": { - "description": "Information about the external VLs the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "extManagedVirtualLinkInfo": { - "description": "External virtual links the VNF instance is connected to.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "vnfVirtualLinkDescId" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfVirtualLinkDescId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "vnfLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "monitoringParameters": { - "description": "Active monitoring parameters.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "value", - "timeStamp" - ], - "properties": { - "id": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "name": { - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", - "type": "string" - }, - "value": { - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification outside the scope of the present document.\n", - "type": "object" - }, - "timeStamp": { - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n", - "type": "string" - } - } - } - }, - "localizationLanguage": { - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", - "type": "string" - }, - "vnfcResourceInfo": { - "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "vduId", - "computeResource", - "vnfcCpInfo" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "storageResourceIds": { - "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfcCpInfo": { - "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "cpdId" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "cpdId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "vnfExtCpId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "addresses": { - "description": "This type represents information about a network address that has been assigned.\n", - "type": "object", - "required": [ - "macAddress" - ], - "properties": { - "macAddress": { - "description": "Assigned MAC address.\n", - "type": "string" - }, - "ipAddress": { - "description": "IP address. Present if an IP address was assigned.\n", - "type": "string" - }, - "subnetIpRanges": { - "description": "IP address ranges defining the subnet in which the IP address was assigned. May be present if the \"ipAddress\" attribute is present, and shall be absent if the \"ipAddress\" attribute is not present.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "minIpAddress", - "maxIpAddress" - ], - "properties": { - "minIpAddress": { - "description": "Lowest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - }, - "maxIpAddress": { - "description": "Highest IP address belonging to the range.\n", - "type": "string", - "format": "ipaddress" - } - } - } - } - } - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualLinkResourceInfo": { - "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "networkResource", - "vnfLinkPorts" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfLinkPorts": { - "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPort). May be present otherwise.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "virtualStorageResourceInfo": { - "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", - "type": "array", - "items": { - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "reservationId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfcInfo": { - "description": "TBD", - "type": "string" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "indicators": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "instantiate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "terminate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scale": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "scaleToLevel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeFlavour": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "heal": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "operate": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "changeExtConn": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that another LCM operation is ongoing. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_lcm_op_occs": { - "get": { - "description": "The client can use this method to query status information about multiple VNF lifecycle management operation occurrences.\n", - "responses": { - "200": { - "description": "OK\nStatus information for zero or more VNF lifecycle management operation occurrences was queried successfully. The response body shall contain status information about zero or more VNF lifecycle operation occurrences.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF lifecycle management operation occurrence.\n", - "type": "object", - "required": [ - "id", - "operationState", - "stateEnteredTime", - "startTime", - "vnfInstanceId", - "operation", - "isAutomaticInvocation", - "operationParams", - "isCancelPending" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "operationState": { - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ] - }, - "stateEnteredTime": { - "description": "Date-time when the current state was entered.\n", - "type": "string", - "format": "date-time" - }, - "startTime": { - "description": "Date-time of the start of the operation.\n", - "type": "string", - "format": "date-time" - }, - "vnfInstanceId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "grantId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "operation": { - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation.\n", - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ] - }, - "isAutomaticInvocation": { - "description": "Set to true if this VNF LCM operation occurrence has been triggered by an automated procedure inside the VNFM (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf triggered by auto-heal). Set to false otherwise.\n", - "type": "boolean" - }, - "operationParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "isCancelPending": { - "description": "If the VNF LCM operation occurrence is in \"STARTING\", \"PROCESSING\" or \"ROLLING_BACK\" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false.\n", - "type": "boolean" - }, - "cancelMode": { - "description": "Cancellation mode. GRACEFUL: The VNFM shall not start any new resource management operation and shall wait for the ongoing resource management operations in the underlying system, typically the VIM, to finish execution or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. FORCEFUL: The VNFM shall not start any new resource management operation, shall cancel the ongoing resource management operations in the underlying system, typically the VIM, and shall wait for the cancellation to finish or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state.\n", - "type": "string", - "enum": [ - "GRACEFUL", - "FORCEFUL" - ] - }, - "error": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - }, - "resourceChanges": { - "description": "This attribute contains information about the cumulative changes to virtualised resources that were performed so far by the LCM operation since its start, if applicable.\n", - "type": "object", - "properties": { - "affectedVnfcs": { - "description": "Information about VNFC instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary VNFCs.\n", - "type": "object", - "required": [ - "id", - "vduId", - "changeType", - "computeResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVnfc structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ] - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "affectedVnfcCpIds": { - "description": "Identifiers of CP(s) of the VNFC instance that were affected by the change. Shall be present for those affected CPs of the VNFC instance that are associated to an external CP of the VNF instance. May be present for further affected CPs of the VNFC instance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "addedStorageResourceIds": { - "description": "References to VirtualStorage resources that have been added. Each value refers to a VirtualStorageResourceInfo item in the VnfInstance that was added to the VNFC. It shall be provided if at least one storage resource was added to the VNFC.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "removedStorageResourceIds": { - "description": "References to VirtualStorage resources that have been removed. The value contains the identifier of a VirtualStorageResourceInfo item that has been removed from the VNFC, and might no longer exist in the VnfInstance. It shall be provided if at least one storage resource was removed from the VNFC.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - }, - "affectedVirtualLinks": { - "description": "Information about VL instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary VLs.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "changeType", - "networkResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY * LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary resource, an AffectedVirtualLink structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY", - "LINK_PORT_ADDED", - "LINK_PORT_REMOVED" - ] - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "affectedVirtualStorages": { - "description": "Information about virtualised storage instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary virtual storage resources.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "changeType", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVirtualStorage structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ] - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - } - }, - "changedInfo": { - "description": "This type represents attribute modifications that were performed on an \"Individual VNF instance\" resource. The attributes that can be included consist of those requested to be modified explicitly in the \"VnfInfoModificationRequest\" data structure, and additional attributes of the \"VnfInstance\" data structure that were modified implicitly e.g. when modifying the referenced VNF package.\n", - "type": "object", - "properties": { - "vnfInstanceName": { - "description": "If present, this attribute signals modifications of the \"vnfInstanceName\" attribute in \"VnfInstance\".\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "If present, this attribute signals modifications of the \"vnfInstanceDescription\" attribute in \"VnfInstance\".\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "vimConnectionInfo": { - "description": "If present, this attribute signals modifications of certain entries in the \"vimConnectionInfo\" attribute array in \"VnfInstance\".\n", - "type": "array", - "items": { - "description": "This type represents parameters to connect to a VIM for managing the resources of a VNF instance. This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters for a VIM may be configured into the VNFM by means outside the scope of the present document, and bound to the identifier of that VIM.\n", - "type": "object", - "required": [ - "id", - "vimType" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimType": { - "description": "Discriminator for the different types of the VIM information. The value of this attribute determines the structure of the \"interfaceInfo\" and \"accessInfo\" attributes, based on the type of the VIM. The set of permitted values is expected to change over time as new types or versions of VIMs become available. The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in Annex C of SOL003.\n", - "type": "string" - }, - "interfaceInfo": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "accessInfo": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extra": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfPkgId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "If present, this attribute signals modifications of the \"vnfProvider\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", - "type": "string" - }, - "vnfProductName": { - "description": "If present, this attribute signals modifications of the \"vnfProductName\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - } - } - }, - "changedExtConnectivity": { - "description": "Information about changed external connectivity, if applicable. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self", - "vnfInstance" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "vnfInstance": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "grant": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "cancel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "retry": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "rollback": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "fail": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_lcm_op_occs/{vnfLcmOpOccId}": { - "parameters": [ - { - "name": "vnfLcmOpOccId", - "description": "Identifier of a VNF lifecycle management operation occurrence. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a PATCH or POST request triggering a VNF LCM operation. It can also be retrieved from the \"vnfLcmOpOccId\" attribute in the VnfLcmOperationOccurrenceNotification.\n", - "in": "path", - "required": true, - "type": "string" - } - ], - "get": { - "description": "The client can use this method to retrieve status information about a VNF lifecycle management operation occurrence by reading an individual \"VNF LCM operation occurrence\" resource.\n", - "responses": { - "200": { - "description": "OK\nInformation about an individual VNF instance was queried successfully. The response body shall contain status information about a VNF lifecycle management operation occurrence.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF lifecycle management operation occurrence.\n", - "type": "object", - "required": [ - "id", - "operationState", - "stateEnteredTime", - "startTime", - "vnfInstanceId", - "operation", - "isAutomaticInvocation", - "operationParams", - "isCancelPending" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "operationState": { - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ] - }, - "stateEnteredTime": { - "description": "Date-time when the current state was entered.\n", - "type": "string", - "format": "date-time" - }, - "startTime": { - "description": "Date-time of the start of the operation.\n", - "type": "string", - "format": "date-time" - }, - "vnfInstanceId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "grantId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "operation": { - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation.\n", - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ] - }, - "isAutomaticInvocation": { - "description": "Set to true if this VNF LCM operation occurrence has been triggered by an automated procedure inside the VNFM (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf triggered by auto-heal). Set to false otherwise.\n", - "type": "boolean" - }, - "operationParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "isCancelPending": { - "description": "If the VNF LCM operation occurrence is in \"STARTING\", \"PROCESSING\" or \"ROLLING_BACK\" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false.\n", - "type": "boolean" - }, - "cancelMode": { - "description": "Cancellation mode. GRACEFUL: The VNFM shall not start any new resource management operation and shall wait for the ongoing resource management operations in the underlying system, typically the VIM, to finish execution or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. FORCEFUL: The VNFM shall not start any new resource management operation, shall cancel the ongoing resource management operations in the underlying system, typically the VIM, and shall wait for the cancellation to finish or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state.\n", - "type": "string", - "enum": [ - "GRACEFUL", - "FORCEFUL" - ] - }, - "error": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - }, - "resourceChanges": { - "description": "This attribute contains information about the cumulative changes to virtualised resources that were performed so far by the LCM operation since its start, if applicable.\n", - "type": "object", - "properties": { - "affectedVnfcs": { - "description": "Information about VNFC instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary VNFCs.\n", - "type": "object", - "required": [ - "id", - "vduId", - "changeType", - "computeResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVnfc structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ] - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "affectedVnfcCpIds": { - "description": "Identifiers of CP(s) of the VNFC instance that were affected by the change. Shall be present for those affected CPs of the VNFC instance that are associated to an external CP of the VNF instance. May be present for further affected CPs of the VNFC instance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "addedStorageResourceIds": { - "description": "References to VirtualStorage resources that have been added. Each value refers to a VirtualStorageResourceInfo item in the VnfInstance that was added to the VNFC. It shall be provided if at least one storage resource was added to the VNFC.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "removedStorageResourceIds": { - "description": "References to VirtualStorage resources that have been removed. The value contains the identifier of a VirtualStorageResourceInfo item that has been removed from the VNFC, and might no longer exist in the VnfInstance. It shall be provided if at least one storage resource was removed from the VNFC.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - }, - "affectedVirtualLinks": { - "description": "Information about VL instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary VLs.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "changeType", - "networkResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY * LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary resource, an AffectedVirtualLink structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY", - "LINK_PORT_ADDED", - "LINK_PORT_REMOVED" - ] - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "affectedVirtualStorages": { - "description": "Information about virtualised storage instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary virtual storage resources.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "changeType", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVirtualStorage structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ] - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - } - }, - "changedInfo": { - "description": "This type represents attribute modifications that were performed on an \"Individual VNF instance\" resource. The attributes that can be included consist of those requested to be modified explicitly in the \"VnfInfoModificationRequest\" data structure, and additional attributes of the \"VnfInstance\" data structure that were modified implicitly e.g. when modifying the referenced VNF package.\n", - "type": "object", - "properties": { - "vnfInstanceName": { - "description": "If present, this attribute signals modifications of the \"vnfInstanceName\" attribute in \"VnfInstance\".\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "If present, this attribute signals modifications of the \"vnfInstanceDescription\" attribute in \"VnfInstance\".\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "vimConnectionInfo": { - "description": "If present, this attribute signals modifications of certain entries in the \"vimConnectionInfo\" attribute array in \"VnfInstance\".\n", - "type": "array", - "items": { - "description": "This type represents parameters to connect to a VIM for managing the resources of a VNF instance. This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters for a VIM may be configured into the VNFM by means outside the scope of the present document, and bound to the identifier of that VIM.\n", - "type": "object", - "required": [ - "id", - "vimType" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimType": { - "description": "Discriminator for the different types of the VIM information. The value of this attribute determines the structure of the \"interfaceInfo\" and \"accessInfo\" attributes, based on the type of the VIM. The set of permitted values is expected to change over time as new types or versions of VIMs become available. The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in Annex C of SOL003.\n", - "type": "string" - }, - "interfaceInfo": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "accessInfo": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extra": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfPkgId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "If present, this attribute signals modifications of the \"vnfProvider\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", - "type": "string" - }, - "vnfProductName": { - "description": "If present, this attribute signals modifications of the \"vnfProductName\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - } - } - }, - "changedExtConnectivity": { - "description": "Information about changed external connectivity, if applicable. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self", - "vnfInstance" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "vnfInstance": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "grant": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "cancel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "retry": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "rollback": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "fail": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nAnother request is in progress that prohibits the fulfilment of the current request, or the current resource state is inconsistent with the request.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_lcm_op_occs/{vnfLcmOpOccId}/retry": { - "parameters": [ - { - "name": "vnfLcmOpOccId", - "description": "Identifier of a VNF lifecycle management operation occurrence to be retried. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a PATCH or POST request triggering a VNF LCM operation. It can also be retrieved from the \"vnfLcmOpOccId\" attribute in the VnfLcmOperationOccurrenceNotification.\n", - "in": "path", - "required": true, - "type": "string" - } - ], - "post": { - "description": "The POST method initiates retrying a VNF lifecycle operation if that operation has experienced a temporary failure, i.e. the related \"VNF LCM operation occurrence\" resource is in \"FAILED_TEMP\" state.\n", - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but processing has not been completed. The response shall have an empty payload body.\n", - "headers": { - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF LCM operation occurrence represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is not in FAILED_TEMP state, or another error handling action is starting, such as rollback or fail. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_lcm_op_occs/{vnfLcmOpOccId}/rollback": { - "parameters": [ - { - "name": "vnfLcmOpOccId", - "description": "Identifier of a VNF lifecycle management operation occurrence to be be rolled back. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a PATCH or POST request triggering a VNF LCM operation. It can also be retrieved from the \"vnfLcmOpOccId\" attribute in the VnfLcmOperationOccurrenceNotification.\n", - "in": "path", - "required": true, - "type": "string" - } - ], - "post": { - "description": "The POST method initiates rolling back a VNF lifecycle operation if that operation has experienced a temporary failure, i.e. the related \"VNF LCM operation occurrence\" resource is in \"FAILED_TEMP\" state.\n", - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but processing has not been completed. The response shall have an empty payload body.\n", - "headers": { - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF LCM operation occurrence represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is not in FAILED_TEMP state, or another error handling action is starting, such as rollback or fail. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_lcm_op_occs/{vnfLcmOpOccId}/fail": { - "parameters": [ - { - "name": "vnfLcmOpOccId", - "description": "Identifier of a VNF lifecycle management operation occurrence to be be marked as \"failed\". This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a PATCH or POST request triggering a VNF LCM operation. It can also be retrieved from the \"vnfLcmOpOccId\" attribute in the VnfLcmOperationOccurrenceNotification.\n", - "in": "path", - "required": true, - "type": "string" - } - ], - "post": { - "description": "The POST method marks a VNF lifecycle management operation occurrence as \"finally failed\" if that operation occurrence is in \"FAILED_TEMP\" state.\n", - "responses": { - "200": { - "description": "OK\nThe state of the VNF lifecycle management operation occurrence was changed successfully. The response shall include a representation of the VNF lifecycle operation occurrence resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a VNF lifecycle management operation occurrence.\n", - "type": "object", - "required": [ - "id", - "operationState", - "stateEnteredTime", - "startTime", - "vnfInstanceId", - "operation", - "isAutomaticInvocation", - "operationParams", - "isCancelPending" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "operationState": { - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ] - }, - "stateEnteredTime": { - "description": "Date-time when the current state was entered.\n", - "type": "string", - "format": "date-time" - }, - "startTime": { - "description": "Date-time of the start of the operation.\n", - "type": "string", - "format": "date-time" - }, - "vnfInstanceId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "grantId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "operation": { - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation.\n", - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ] - }, - "isAutomaticInvocation": { - "description": "Set to true if this VNF LCM operation occurrence has been triggered by an automated procedure inside the VNFM (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf triggered by auto-heal). Set to false otherwise.\n", - "type": "boolean" - }, - "operationParams": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "isCancelPending": { - "description": "If the VNF LCM operation occurrence is in \"STARTING\", \"PROCESSING\" or \"ROLLING_BACK\" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false.\n", - "type": "boolean" - }, - "cancelMode": { - "description": "Cancellation mode. GRACEFUL: The VNFM shall not start any new resource management operation and shall wait for the ongoing resource management operations in the underlying system, typically the VIM, to finish execution or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. FORCEFUL: The VNFM shall not start any new resource management operation, shall cancel the ongoing resource management operations in the underlying system, typically the VIM, and shall wait for the cancellation to finish or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state.\n", - "type": "string", - "enum": [ - "GRACEFUL", - "FORCEFUL" - ] - }, - "error": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - }, - "resourceChanges": { - "description": "This attribute contains information about the cumulative changes to virtualised resources that were performed so far by the LCM operation since its start, if applicable.\n", - "type": "object", - "properties": { - "affectedVnfcs": { - "description": "Information about VNFC instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary VNFCs.\n", - "type": "object", - "required": [ - "id", - "vduId", - "changeType", - "computeResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "vduId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVnfc structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ] - }, - "computeResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "affectedVnfcCpIds": { - "description": "Identifiers of CP(s) of the VNFC instance that were affected by the change. Shall be present for those affected CPs of the VNFC instance that are associated to an external CP of the VNF instance. May be present for further affected CPs of the VNFC instance.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "addedStorageResourceIds": { - "description": "References to VirtualStorage resources that have been added. Each value refers to a VirtualStorageResourceInfo item in the VnfInstance that was added to the VNFC. It shall be provided if at least one storage resource was added to the VNFC.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - }, - "removedStorageResourceIds": { - "description": "References to VirtualStorage resources that have been removed. The value contains the identifier of a VirtualStorageResourceInfo item that has been removed from the VNFC, and might no longer exist in the VnfInstance. It shall be provided if at least one storage resource was removed from the VNFC.\n", - "type": "array", - "items": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - }, - "affectedVirtualLinks": { - "description": "Information about VL instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary VLs.\n", - "type": "object", - "required": [ - "id", - "virtualLinkDescId", - "changeType", - "networkResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualLinkDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY * LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary resource, an AffectedVirtualLink structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY", - "LINK_PORT_ADDED", - "LINK_PORT_REMOVED" - ] - }, - "networkResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "affectedVirtualStorages": { - "description": "Information about virtualised storage instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "description": "This type provides information about added, deleted, modified and temporary virtual storage resources.\n", - "type": "object", - "required": [ - "id", - "virtualStorageDescId", - "changeType", - "storageResource" - ], - "properties": { - "id": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - }, - "virtualStorageDescId": { - "description": "An identifier that is unique within a VNF descriptor.\n", - "type": "string" - }, - "changeType": { - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVirtualStorage structure exists as long as the temporary resource exists.\n", - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ] - }, - "storageResource": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - } - } - }, - "changedInfo": { - "description": "This type represents attribute modifications that were performed on an \"Individual VNF instance\" resource. The attributes that can be included consist of those requested to be modified explicitly in the \"VnfInfoModificationRequest\" data structure, and additional attributes of the \"VnfInstance\" data structure that were modified implicitly e.g. when modifying the referenced VNF package.\n", - "type": "object", - "properties": { - "vnfInstanceName": { - "description": "If present, this attribute signals modifications of the \"vnfInstanceName\" attribute in \"VnfInstance\".\n", - "type": "string" - }, - "vnfInstanceDescription": { - "description": "If present, this attribute signals modifications of the \"vnfInstanceDescription\" attribute in \"VnfInstance\".\n", - "type": "string" - }, - "vnfConfigurableProperties": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "metadata": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extensions": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "vimConnectionInfo": { - "description": "If present, this attribute signals modifications of certain entries in the \"vimConnectionInfo\" attribute array in \"VnfInstance\".\n", - "type": "array", - "items": { - "description": "This type represents parameters to connect to a VIM for managing the resources of a VNF instance. This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters for a VIM may be configured into the VNFM by means outside the scope of the present document, and bound to the identifier of that VIM.\n", - "type": "object", - "required": [ - "id", - "vimType" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vimType": { - "description": "Discriminator for the different types of the VIM information. The value of this attribute determines the structure of the \"interfaceInfo\" and \"accessInfo\" attributes, based on the type of the VIM. The set of permitted values is expected to change over time as new types or versions of VIMs become available. The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in Annex C of SOL003.\n", - "type": "string" - }, - "interfaceInfo": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "accessInfo": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - }, - "extra": { - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", - "type": "object" - } - } - } - }, - "vnfPkgId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfdId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "vnfProvider": { - "description": "If present, this attribute signals modifications of the \"vnfProvider\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", - "type": "string" - }, - "vnfProductName": { - "description": "If present, this attribute signals modifications of the \"vnfProductName\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", - "type": "string" - }, - "vnfSoftwareVersion": { - "description": "A Version.\n", - "type": "string" - }, - "vnfdVersion": { - "description": "A Version.\n", - "type": "string" - } - } - }, - "changedExtConnectivity": { - "description": "Information about changed external connectivity, if applicable. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "extLinkPorts": { - "description": "Link ports of this VL.\n", - "type": "array", - "items": { - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", - "type": "object", - "required": [ - "id", - "resourceHandle" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceHandle": { - "required": [ - "vimConnectionId", - "resourceId" - ], - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "properties": { - "vimConnectionId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceProviderId": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "resourceId": { - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", - "type": "string" - }, - "vimLevelResourceType": { - "description": "Type of the resource in the scope of the VIM or the resource provider.\n", - "type": "string" - } - } - }, - "cpInstanceId": { - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", - "type": "string" - } - } - } - } - } - } - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self", - "vnfInstance" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "vnfInstance": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "grant": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "cancel": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "retry": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "rollback": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - }, - "fail": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF LCM operation occurrence represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "The operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. Typically, this is due to the fact that the VNF instance resource is not in FAILED_TEMP state, or another error handling action is starting, such as rollback or fail. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/vnf_lcm_op_occs/{vnfLcmOpOccId}/cancel": { - "parameters": [ - { - "name": "vnfLcmOpOccId", - "description": "Identifier of a VNF lifecycle management operation occurrence to be be cancelled. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a PATCH or POST request triggering a VNF LCM operation. It can also be retrieved from the \"vnfLcmOpOccId\" attribute in the VnfLcmOperationOccurrenceNotification.\n", - "in": "path", - "required": true, - "type": "string" - } - ], - "post": { - "description": "The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed or rolled back, i.e. the related \"VNF LCM operation occurrence\" is either in \"PROCESSING\" or \"ROLLING_BACK\" state.\n", - "responses": { - "202": { - "description": "Accepted\nThe request was accepted for processing, but processing has not been completed. The response shall have an empty payload body.\n", - "headers": { - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF LCM operation occurrence represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "409": { - "description": "Conflict\nThe operation cannot be executed currently, due to a conflict with the state of the VNF LCM operation occurrence resource. Typically, this is due to the fact that the operation occurrence is not in STARTING, PROCESSING or ROLLING_BACK state. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute shall convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/subscriptions": { - "post": { - "description": "The POST method creates a new subscription.\n", - "parameters": [ - { - "name": "LccnSubscriptionRequest", - "description": "Details of the subscription to be created.\n", - "in": "body", - "required": true, - "schema": { - "description": "This type represents a subscription request related to notifications about VNF lifecycle changes.\n", - "type": "object", - "required": [ - "callbackUri" - ], - "properties": { - "filter": { - "description": "This type represents a subscription filter related to notifications about VNF lifecycle changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vnfInstanceSubscriptionFilter": { - "description": "This type represents subscription filter criteria to match VNF instances.\n", - "type": "object", - "properties": { - "vnfdIds": { - "description": "If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfProductsFromProviders": { - "description": "If present, match VNF instances that belong to VNF products from certain providers. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProvider" - ], - "properties": { - "vnfProvider": { - "description": "Name of the VNF provider to match.\n", - "type": "string" - }, - "vnfProducts": { - "description": "If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProductName" - ], - "properties": { - "vnfProductName": { - "description": "Name of the VNF product to match.\n", - "type": "string" - }, - "versions": { - "description": "If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfSoftwareVersion" - ], - "properties": { - "vnfSoftwareVersion": { - "description": "A version.\n", - "type": "string" - }, - "vnfdVersions": { - "description": "If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "description": "A version.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "notificationTypes": { - "description": "Match particular notification types. Permitted values: * VnfLcmOperationOccurrenceNotification * VnfIdentifierCreationNotification * VnfIdentifierDeletionNotification The permitted values of the \"notificationTypes\" attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "VnfLcmOperationOccurrenceNotification", - "VnfIdentifierCreationNotification", - "VnfIdentifierDeletionNotification" - ] - } - }, - "operationTypes": { - "description": "Match particular VNF lifecycle operation types for the notification of type VnfLcmOperationOccurrenceNotification. May be present if the \"notificationTypes\" attribute contains the value \"VnfLcmOperationOccurrenceNotification\", and shall be absent otherwise.\n", - "type": "array", - "items": { - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation.\n", - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ] - } - }, - "operationStates": { - "description": "Match particular LCM operation state values as reported in notifications of type VnfLcmOperationOccurrenceNotification. May be present if the \"notificationTypes\" attribute contains the value \"VnfLcmOperationOccurrenceNotification\", and shall be absent otherwise.\n", - "type": "array", - "items": { - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ] - } - } - } - }, - "callbackUri": { - "description": "String formatted according to IETF RFC 3986.\n", - "type": "string" - }, - "authentication": { - "type": "object", - "required": [ - "authType" - ], - "properties": { - "authType": { - "description": "Defines the types of Authentication / Authorization which the API consumer is willing to accept when receiving a notification. Permitted values: * BASIC: In every HTTP request to the notification endpoint, use HTTP Basic authentication with the client credentials. \n* OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the notification endpoint, use an OAuth 2.0 Bearer token, obtained\n using the client credentials grant type.\n* TLS_CERT: Every HTTP request to the notification endpoint is sent over a mutually authenticated TLS session, i.e. not only the\n server is authenticated, but also the client is authenticated\n during the TLS tunnel setup.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "BASIC", - "OAUTH2_CLIENT_CREDENTIALS", - "TLS_CERT" - ] - } - }, - "paramsBasic": { - "description": "Parameters for authentication/authorization using BASIC. Shall be present if authType is \"BASIC\" and the contained information has not been provisioned out of band. Shall be absent otherwise.\n", - "type": "object", - "properties": { - "userName": { - "description": "Username to be used in HTTP Basic authentication. Shall be present if it has not been provisioned out of band.\n", - "type": "string" - }, - "password": { - "description": "Password to be used in HTTP Basic authentication. Shall be present if it has not been provisioned out of band.\n", - "type": "string" - } - } - }, - "paramsOauth2ClientCredentials": { - "description": "Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS. Shall be present if authType is \"OAUTH2_CLIENT_CREDENTIALS\" and the contained information has not been provisioned out of band. Shall be absent otherwise.\n", - "type": "object", - "properties": { - "clientId": { - "description": "Client identifier to be used in the access token request of the OAuth 2.0 client credentials grant type. Shall be present if it has not been provisioned out of band. The clientId and clientPassword passed in a subscription shall not be the same as the clientId and clientPassword that are used to obtain authorization for API requests. Client credentials may differ between subscriptions. The value of clientPassword should be generated by a random process.\n", - "type": "string" - }, - "clientPassword": { - "description": "Client password to be used in the access token request of the OAuth 2.0 client credentials grant type. Shall be present if it has not been provisioned out of band. The clientId and clientPassword passed in a subscription shall not be the same as the clientId and clientPassword that are used to obtain authorization for API requests. Client credentials may differ between subscriptions. The value of clientPassword should be generated by a random process.\n", - "type": "string" - }, - "tokenEndpoint": { - "description": "String formatted according to IETF RFC 3986.\n", - "type": "string" - } - } - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Created\nThe subscription was created successfully. The response body shall contain a representation of the created subscription resource. The HTTP response shall include a \"Location\" HTTP header that points to the created subscription resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "Location": { - "description": "The resource URI of the created VNF instance", - "type": "string", - "format": "url" - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a subscription related to notifications about VNF lifecycle changes.\n", - "type": "object", - "required": [ - "id", - "callbackUri", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "filter": { - "description": "This type represents a subscription filter related to notifications about VNF lifecycle changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vnfInstanceSubscriptionFilter": { - "description": "This type represents subscription filter criteria to match VNF instances.\n", - "type": "object", - "properties": { - "vnfdIds": { - "description": "If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfProductsFromProviders": { - "description": "If present, match VNF instances that belong to VNF products from certain providers. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProvider" - ], - "properties": { - "vnfProvider": { - "description": "Name of the VNF provider to match.\n", - "type": "string" - }, - "vnfProducts": { - "description": "If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProductName" - ], - "properties": { - "vnfProductName": { - "description": "Name of the VNF product to match.\n", - "type": "string" - }, - "versions": { - "description": "If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfSoftwareVersion" - ], - "properties": { - "vnfSoftwareVersion": { - "description": "A version.\n", - "type": "string" - }, - "vnfdVersions": { - "description": "If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "description": "A version.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "notificationTypes": { - "description": "Match particular notification types. Permitted values: * VnfLcmOperationOccurrenceNotification * VnfIdentifierCreationNotification * VnfIdentifierDeletionNotification The permitted values of the \"notificationTypes\" attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "VnfLcmOperationOccurrenceNotification", - "VnfIdentifierCreationNotification", - "VnfIdentifierDeletionNotification" - ] - } - }, - "operationTypes": { - "description": "Match particular VNF lifecycle operation types for the notification of type VnfLcmOperationOccurrenceNotification. May be present if the \"notificationTypes\" attribute contains the value \"VnfLcmOperationOccurrenceNotification\", and shall be absent otherwise.\n", - "type": "array", - "items": { - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation.\n", - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ] - } - }, - "operationStates": { - "description": "Match particular LCM operation state values as reported in notifications of type VnfLcmOperationOccurrenceNotification. May be present if the \"notificationTypes\" attribute contains the value \"VnfLcmOperationOccurrenceNotification\", and shall be absent otherwise.\n", - "type": "array", - "items": { - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ] - } - } - } - }, - "callbackUri": { - "description": "String formatted according to IETF RFC 3986.\n", - "type": "string" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF LCM operation occurrence represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "get": { - "description": "The GET method queries the list of active subscriptions of the functional block that invokes the method. It can be used e.g. for resynchronization after error situations.\n", - "responses": { - "200": { - "description": "OK\nThe list of subscriptions was queried successfully. The response body shall contain the representations of all active subscriptions of the functional block that invokes the method.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a subscription related to notifications about VNF lifecycle changes.\n", - "type": "object", - "required": [ - "id", - "callbackUri", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "filter": { - "description": "This type represents a subscription filter related to notifications about VNF lifecycle changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vnfInstanceSubscriptionFilter": { - "description": "This type represents subscription filter criteria to match VNF instances.\n", - "type": "object", - "properties": { - "vnfdIds": { - "description": "If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfProductsFromProviders": { - "description": "If present, match VNF instances that belong to VNF products from certain providers. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProvider" - ], - "properties": { - "vnfProvider": { - "description": "Name of the VNF provider to match.\n", - "type": "string" - }, - "vnfProducts": { - "description": "If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProductName" - ], - "properties": { - "vnfProductName": { - "description": "Name of the VNF product to match.\n", - "type": "string" - }, - "versions": { - "description": "If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfSoftwareVersion" - ], - "properties": { - "vnfSoftwareVersion": { - "description": "A version.\n", - "type": "string" - }, - "vnfdVersions": { - "description": "If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "description": "A version.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "notificationTypes": { - "description": "Match particular notification types. Permitted values: * VnfLcmOperationOccurrenceNotification * VnfIdentifierCreationNotification * VnfIdentifierDeletionNotification The permitted values of the \"notificationTypes\" attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "VnfLcmOperationOccurrenceNotification", - "VnfIdentifierCreationNotification", - "VnfIdentifierDeletionNotification" - ] - } - }, - "operationTypes": { - "description": "Match particular VNF lifecycle operation types for the notification of type VnfLcmOperationOccurrenceNotification. May be present if the \"notificationTypes\" attribute contains the value \"VnfLcmOperationOccurrenceNotification\", and shall be absent otherwise.\n", - "type": "array", - "items": { - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation.\n", - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ] - } - }, - "operationStates": { - "description": "Match particular LCM operation state values as reported in notifications of type VnfLcmOperationOccurrenceNotification. May be present if the \"notificationTypes\" attribute contains the value \"VnfLcmOperationOccurrenceNotification\", and shall be absent otherwise.\n", - "type": "array", - "items": { - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ] - } - } - } - }, - "callbackUri": { - "description": "String formatted according to IETF RFC 3986.\n", - "type": "string" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nInvalid attribute-based filtering parameters. The response body shall contain a ProblemDetails structure, in which the \"detail\" attribute should convey more information about the error.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF LCM operation occurrence represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - }, - "/subscriptions/{subscriptionId}": { - "parameters": [ - { - "name": "subscriptionId", - "description": "Identifier of this subscription. This identifier can be retrieved from the resource referenced by the \"Location\" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved from the \"id\" attribute in the payload body of that response.\n", - "in": "path", - "type": "string", - "required": true - } - ], - "get": { - "description": "The GET method retrieves information about a subscription by reading an individual subscription resource.\n", - "responses": { - "200": { - "description": "OK\nThe operation has completed successfully. The response body shall contain a representation of the subscription resource.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "This type represents a subscription related to notifications about VNF lifecycle changes.\n", - "type": "object", - "required": [ - "id", - "callbackUri", - "_links" - ], - "properties": { - "id": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - }, - "filter": { - "description": "This type represents a subscription filter related to notifications about VNF lifecycle changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical \"and\" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical \"or\" between the values of one filter attribute).\n", - "type": "object", - "properties": { - "vnfInstanceSubscriptionFilter": { - "description": "This type represents subscription filter criteria to match VNF instances.\n", - "type": "object", - "properties": { - "vnfdIds": { - "description": "If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfProductsFromProviders": { - "description": "If present, match VNF instances that belong to VNF products from certain providers. The attributes \"vnfdIds\" and \"vnfProductsFromProviders\" are alternatives to reference to VNF instances that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProvider" - ], - "properties": { - "vnfProvider": { - "description": "Name of the VNF provider to match.\n", - "type": "string" - }, - "vnfProducts": { - "description": "If present, match VNF instances that belong to VNF products with certain product names, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfProductName" - ], - "properties": { - "vnfProductName": { - "description": "Name of the VNF product to match.\n", - "type": "string" - }, - "versions": { - "description": "If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "type": "object", - "required": [ - "vnfSoftwareVersion" - ], - "properties": { - "vnfSoftwareVersion": { - "description": "A version.\n", - "type": "string" - }, - "vnfdVersions": { - "description": "If present, match VNF instances that belong to VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider.\n", - "type": "array", - "items": { - "description": "A version.\n", - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "vnfInstanceIds": { - "description": "If present, match VNF instances with an instance identifier listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "description": "An identifier with the intention of being globally unique.\n", - "type": "string" - } - }, - "vnfInstanceNames": { - "description": "If present, match VNF instances with a VNF Instance Name listed in this attribute. The attributes \"vnfInstanceIds\" and \"vnfInstanceNames\" are alternatives to reference to particular VNF Instances in a filter. They should not be used both in the same filter instance, but one alternative should be chosen.\n", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "notificationTypes": { - "description": "Match particular notification types. Permitted values: * VnfLcmOperationOccurrenceNotification * VnfIdentifierCreationNotification * VnfIdentifierDeletionNotification The permitted values of the \"notificationTypes\" attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems.\n", - "type": "array", - "items": { - "type": "string", - "enum": [ - "VnfLcmOperationOccurrenceNotification", - "VnfIdentifierCreationNotification", - "VnfIdentifierDeletionNotification" - ] - } - }, - "operationTypes": { - "description": "Match particular VNF lifecycle operation types for the notification of type VnfLcmOperationOccurrenceNotification. May be present if the \"notificationTypes\" attribute contains the value \"VnfLcmOperationOccurrenceNotification\", and shall be absent otherwise.\n", - "type": "array", - "items": { - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation.\n", - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ] - } - }, - "operationStates": { - "description": "Match particular LCM operation state values as reported in notifications of type VnfLcmOperationOccurrenceNotification. May be present if the \"notificationTypes\" attribute contains the value \"VnfLcmOperationOccurrenceNotification\", and shall be absent otherwise.\n", - "type": "array", - "items": { - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ] - } - } - } - }, - "callbackUri": { - "description": "String formatted according to IETF RFC 3986.\n", - "type": "string" - }, - "_links": { - "description": "Links to resources related to this resource.\n", - "type": "object", - "required": [ - "self" - ], - "properties": { - "self": { - "description": "This type represents a link to a resource.\n", - "type": "object", - "required": [ - "href" - ], - "properties": { - "href": { - "description": "URI of the referenced resource.\n", - "type": "string", - "format": "url" - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF LCM operation occurrence represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - }, - "delete": { - "description": "The DELETE method terminates an individual subscription.\n", - "responses": { - "204": { - "description": "No Content\nThe subscription resource was deleted successfully. The response body shall be empty.\n", - "headers": { - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - } - }, - "400": { - "description": "Bad Request\nIf the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or a syntactically incorrect payload body), 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.\n ---\n\nIf 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.\n ---\n\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "401": { - "description": "Unauthorized\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - }, - "WWW-Authenticate": { - "description": "Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token.\n", - "type": "string", - "maximum": 1, - "minimum": 0 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "403": { - "description": "Forbidden\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "404": { - "description": "Not Found\nIf 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. Specifically in case of this task resource, the reason can also be that the task is not supported for the VNF LCM operation occurrence represented by the parent resource, and that the task resource consequently does not exist. The \"ProblemDetails\" structure may be provided, including in the \"detail\" attribute information about the sourceof the problem, e.g. a wrong resource URI variable.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "405": { - "description": "Not Found\nIf 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.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "406": { - "description": "Not Acceptable\nIf 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 in that case.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "500": { - "description": "Internal Server Error\nIf 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 withthis response code. The \"ProblemDetails\" structure shall be provided, and shall include in the \"detail\" attribute more information about the source of the problem.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - }, - "503": { - "description": "Service Unavailable\nIf 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 [13] for the use of the \"Retry-After\" HTTP header and for the alternative to refuse the connection. The \"ProblemDetails\" structure may be omitted.\n", - "headers": { - "Content-Type": { - "description": "The MIME type of the body of the response.", - "type": "string", - "maximum": 1, - "minimum": 1 - } - }, - "schema": { - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "type": "object", - "required": [ - "status", - "detail" - ], - "properties": { - "type": { - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "type": "string", - "format": "URI" - }, - "title": { - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", - "type": "string" - }, - "status": { - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", - "type": "integer" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.\n", - "type": "string" - }, - "instance": { - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "type": "string", - "format": "URI" - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/SOL002-VNFLifecycleManagement-API.yaml b/SOL002/VNFLifecycleManagement-API/SOL002-VNFLifecycleManagement-API.yaml deleted file mode 100644 index 1558df7341d4d88887e9c4b4ae79dcd01f09567f..0000000000000000000000000000000000000000 --- a/SOL002/VNFLifecycleManagement-API/SOL002-VNFLifecycleManagement-API.yaml +++ /dev/null @@ -1,33496 +0,0 @@ -swagger: '2.0' -info: - version: 1.1.1 - title: SOL002 - VNF Configuration interface - description: > - VNF Configuration interface of ETSI NFV SOL002 - - - IMPORTANT: Please note that this file might be not aligned to the current - version of the ETSI Group Specification it refers to. In case of - discrepancies the published ETSI Group Specification takes precedence. - - - Please report bugs to - https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=--- - license: - name: ETSI Forge copyright notice - url: 'https://forge.etsi.org/etsi-forge-copyright-notice.txt' -externalDocs: - description: ETSI GS NFV-SOL 002 V2.4.1 - url: >- - http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf -basePath: /vnfconfig/v1 -schemes: - - http - - https -consumes: - - application/json -produces: - - application/json -paths: - /vnf_instances: - post: - description: The POST method creates a new VNF instance resource. - parameters: - - name: createVnfRequest - description: The VNF creation parameters - in: body - required: true - schema: - type: object - required: - - vnfdId - properties: - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: | - Human-readable name of the VNF instance to be created. - type: string - vnfInstanceDescription: - description: | - Human-readable description of the VNF instance to be created. - type: string - - name: Accept - description: > - Content-Types that are acceptable for the response. Reference: IETF - RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - - name: Content-Type - description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 - in: header - required: true - type: string - responses: - '201': - description: A VNF Instance identifier was created successfully - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Created - - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - Another request is in progress that prohibits the fulfilment of the - current request, or the current resource state is inconsistent with - the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '416': - description: > - Requested Range Not Satisfiable - - This code is returned if the requested byte range in the Range HTTP - header is not present in the requested resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '422': - description: > - 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. NOTE 2: - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - get: - description: | - The GET method queries information about multiple VNF instances. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. Reference: IETF - RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: | - The authorization token for the request. Reference: IETF RFC 7235 - in: header - required: true - type: string - responses: - '200': - description: > - OK - - Information about zero or more VNF instances was queried - successfully. The response body shall contain representations of - zero or more VNF instances. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - type: array - items: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified - with the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This - attribute can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from - the VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from - the VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall - comply with the provisions defined in clause 4 of IETF RFC - 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. - Represents for every scaling aspect how "big" the VNF - has been scaled w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= - maxScaleLevel as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been - configured (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link - port of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource - that is used by a VNF instance. Information - about the resource is available from the - VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of - being globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of - being globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected - to be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource - that is used by a VNF instance. Information - about the resource is available from the - VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of - being globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of - being globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected - to be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, - as defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the - VNFM (e.g. obtained for autoscaling purposes). The - type of the "value" attribute (i.e. scalar, - structure (Object in JSON), or array (of scalars, - arrays or structures/Objects)) is assumed to be - defined in an external measurement specification - outside the scope of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should - be formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the - VNFD, and localization language selection can take place - at instantiation time. The value shall comply with the - format defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item - in the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when - that particular CP of the VNFC instance is - associated to an external CP of the VNF instance. - May be present otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May - be present if the "ipAddress" attribute - is present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. - The order of the pairs in the list is not - significant. In JSON, a set of key- value pairs is - represented as an object. It shall comply with the - provisions defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource - that is used by a VNF instance. Information - about the resource is available from the - VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of - being globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of - being globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected - to be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. - The order of the pairs in the list is not - significant. In JSON, a set of key- value pairs is - represented as an object. It shall comply with the - provisions defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used - as storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. - The order of the pairs in the list is not - significant. In JSON, a set of key- value pairs is - represented as an object. It shall comply with the - provisions defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. In - JSON, a set of key- value pairs is represented as an - object. It shall comply with the provisions defined in - clause 4 of IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. In - JSON, a set of key- value pairs is represented as an - object. It shall comply with the provisions defined in - clause 4 of IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" - and "vnfInstanceNames" are alternatives to reference to - particular VNF Instances in a filter. They should not be - used both in the same filter instance, but one alternative - should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" - and "vnfInstanceNames" are alternatives to reference to - particular VNF Instances in a filter. They should not be - used both in the same filter instance, but one alternative - should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - It fhe request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - Another request is in progress that prohibits the fulfilment of the - current request, or the current resource state is inconsistent with - the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '416': - description: > - Requested Range Not Satisfiable - - This code is returned if the requested byte range in the Range HTTP - header is not present in the requested resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}': - parameters: - - name: vnfInstanceId - description: > - Identifier of the VNF instance. This identifier can be retrieved from - the resource referenced by the "Location" HTTP header in the response - to a POST request creating a new VNF instance resource. It can also be - retrieved from the "id" attribute in the payload body of that - response. - in: path - type: string - required: true - get: - description: | - Information about an individual VNF instance was queried successfully. - responses: - '200': - description: > - OK - - Information about zero or more VNF instances was queried - successfully. The response body shall contain representations of - zero or more VNF instances. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - Another request is in progress that prohibits the fulfilment of the - current request, or the current resource state is inconsistent with - the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '416': - description: > - Requested Range Not Satisfiable - - This code is returned if the requested byte range in the Range HTTP - header is not present in the requested resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - patch: - description: > - This method modifies an individual VNF instance resource. Changes to the - VNF configurable properties are applied to the configuration in the VNF - instance, and are reflected in the representation of this resource. - Other changes are applied to the VNF instance information managed by the - VNFM, and are reflected in the representation of this resource - parameters: - - name: vnfInfoModifications - description: Input parameters for VNF info modification - required: true - in: body - schema: - description: > - This type represents attribute modifications that were performed - on an "Individual VNF instance" resource. The attributes that can - be included consist of those requested to be modified explicitly - in the "VnfInfoModificationRequest" data structure, and additional - attributes of the "VnfInstance" data structure that were modified - implicitly e.g. when modifying the referenced VNF package. - type: object - properties: - vnfInstanceName: - description: > - If present, this attribute signals modifications of the - "vnfInstanceName" attribute in "VnfInstance". - type: string - vnfInstanceDescription: - description: > - If present, this attribute signals modifications of the - "vnfInstanceDescription" attribute in "VnfInstance". - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - metadata: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - vimConnectionInfo: - description: > - If present, this attribute signals modifications of certain - entries in the "vimConnectionInfo" attribute array in - "VnfInstance". - type: array - items: - description: > - This type represents parameters to connect to a VIM for - managing the resources of a VNF instance. This structure is - used to convey VIM-related parameters over the Or-Vnfm - interface. Additional parameters for a VIM may be configured - into the VNFM by means outside the scope of the present - document, and bound to the identifier of that VIM. - type: object - required: - - id - - vimType - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vimId: - description: > - An identifier with the intention of being globally - unique. - type: string - vimType: - description: > - Discriminator for the different types of the VIM - information. The value of this attribute determines the - structure of the "interfaceInfo" and "accessInfo" - attributes, based on the type of the VIM. The set of - permitted values is expected to change over time as new - types or versions of VIMs become available. The ETSI NFV - registry of VIM-related information provides access to - information about VimConnectionInfo definitions for - various VIM types. The structure of the registry is - defined in Annex C of SOL003. - type: string - interfaceInfo: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. In - JSON, a set of key- value pairs is represented as an - object. It shall comply with the provisions defined in - clause 4 of IETF RFC 7159. - type: object - accessInfo: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. In - JSON, a set of key- value pairs is represented as an - object. It shall comply with the provisions defined in - clause 4 of IETF RFC 7159. - type: object - extra: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. In - JSON, a set of key- value pairs is represented as an - object. It shall comply with the provisions defined in - clause 4 of IETF RFC 7159. - type: object - vnfPkgId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - If present, this attribute signals modifications of the - "vnfProvider" attribute in "VnfInstance". If present, this - attribute (which depends on the value of the "vnfPkgId" - attribute) was modified implicitly following a request to - modify the "vnfPkgId" attribute, by copying the value of this - attribute from the VNFD in the VNF Package identified by the - "vnfPkgId” attribute. - type: string - vnfProductName: - description: > - If present, this attribute signals modifications of the - "vnfProductName" attribute in "VnfInstance". If present, this - attribute (which depends on the value of the "vnfPkgId" - attribute) was modified implicitly following a request to - modify the "vnfPkgId" attribute, by copying the value of this - attribute from the VNFD in the VNF Package identified by the - "vnfPkgId” attribute. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "VNF LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - It fhe request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that another LCM operation is ongoing. The response body - shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '412': - description: > - Precondition Failed - - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - delete: - description: | - This method deletes an individual VNF instance resource. - responses: - '204': - description: > - No Content - - The VNF instance resource and the associated VNF identifier were - deleted successfully. The response body shall be empty. - headers: - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - '400': - description: > - Bad Request - - It fhe request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is in INSTANTIATED state. - The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '412': - description: > - Precondition Failed - - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}/instantiate': - parameters: - - name: vnfInstanceId - description: > - Identifier of the VNF instance. This identifier can be retrieved from - the resource referenced by the "Location" HTTP header in the response - to a POST request creating a new VNF instance resource. It can also be - retrieved from the "id" attribute in the payload body of that - response. - in: path - type: string - required: true - post: - description: | - The POST method instantiates a VNF instance. - parameters: - - name: InstantiateVnfRequest - description: Parameters for the VNF instantiation. - in: body - required: true - schema: - type: object - required: - - flavourId - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - instantiationLevelId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - extVirtualLinks: - description: | - Information about external VLs to connect the VNF to. - type: array - items: - description: | - This type represents an external VL. - type: object - required: - - id - - resourceId - - extCps - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other resource - provider. It is expected to be unique within the VIM - instance. - type: string - extCps: - description: > - External CPs of the VNF to be connected to this external - VL. - type: array - items: - description: > - This type represents configuration information for - external CPs created from a CPD. - type: object - required: - - cpdId - properties: - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - cpConfig: - description: > - List of instance data that need to be configured - on the CP instances created from the respective - CPD. - type: array - items: - description: > - This type represents an externally provided link - port or network address information per instance - of an external connection point. In case a link - port is provided, the VNFM shall use that link - port when connecting the external CP to the - external VL. In a link port is not provided, the - VNFM shall create a link port on the external - VL, and use that link port to connect the - external CP to the external VL. - type: object - properties: - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - linkPortId: - description: > - An identifier with the intention of being - globally unique. - type: string - cpProtocolData: - description: > - Parameters for configuring the network - protocols on the link port that connects the - CP to a VL. The following conditions apply - to the attributes "linkPortId" and - "cpProtocolData": * The "linkPortId" and - "cpProtocolData" attributes shall both be - absent for the deletion of an existing external CP instance - addressed by cpInstanceId. - * At least one of these attributes shall be - present for a - to-be-created external CP instance or an existing external - CP instance. - * If the "linkPortId" attribute is absent, - the VNFM shall create a - link port. - * If the "cpProtocolData" attribute is - absent, the "linkPortId" - attribute shall be provided referencing a pre-created link port, - and the VNFM can use means outside the scope of the present - document to obtain the pre-configured address information for the - connection point from the resource representing the link port. - * If both "cpProtocolData" and "linkportId" - are provided, the API - consumer shall ensure that the cpProtocolData can be used with the - pre-created link port referenced by "linkPortId". - type: array - items: - description: > - This type represents network protocol - data. - type: object - required: - - layerProtocol - properties: - layerProtocol: - description: > - Identifier of layer(s) and protocol(s). - This attribute allows to signal the - addition of further types of layer and - protocol in future versions of the - present document in a - backwards-compatible way. In the current - version of the present document, only IP - over Ethernet is supported. - type: string - enum: - - IP_OVER_ETHERNET - ipOverEthernet: - description: > - This type represents network address - data for IP over Ethernet. - type: object - properties: - macAddress: - description: > - A MAC address. Representation: string - that consists of groups of two - hexadecimal digits, separated by hyphens - or colons. - type: string - format: MAC - ipAddresses: - description: > - List of IP addresses to assign to the CP - instance. Each entry represents IP - address data for fixed or dynamic IP - address assignment per subnet. If this - attribute is not present, no IP address - shall be assigned. - type: array - items: - type: object - required: - - type - properties: - type: - description: > - The type of the IP addresses. Permitted - values: IPV4, IPV6. - type: string - enum: - - IPV4 - - IPV6 - fixedAddresses: - description: > - Fixed addresses to assign (from the - subnet defined by "subnetId" if - provided). Exactly one of - "fixedAddresses", "numDynamicAddresses" - or "ipAddressRange" shall be present. - type: array - items: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - numDynamicAddresses: - description: > - Number of dynamic addresses to assign - (from the subnet defined by "subnetId" - if provided). Exactly one of - "fixedAddresses", "numDynamicAddresses" - or "ipAddressRange" shall be present. - type: integer - addressRange: - description: > - An IP address range to be used, e.g. in - case of egress connections. In case this - attribute is present, IP addresses from - the range will be used. - type: object - required: - - minAddress - - maxAddress - properties: - minAddress: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - maxAddress: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - subnetId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected - to be unique within the VIM instance. - type: string - extLinkPorts: - description: > - Externally provided link ports to be used to connect - external connection points to this external VL. If this - attribute is not present, the VNFM shall create the link - ports on the external VL. - type: array - items: - description: > - This type represents an externally provided link port - to be used to connect an external connection point to - an external VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - extManagedVirtualLinks: - description: | - Information about external VLs to connect the VNF to. - type: array - items: - type: object - required: - - id - - virtualLinkDescId - - resourceId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - virtualLinkDescId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other resource - provider. It is expected to be unique within the VIM - instance. - type: string - localizationLanguage: - description: > - Localization language of the VNF to be instantiated. The value - shall comply with the format defined in IETF RFC 5646. - type: string - additionalParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - responses: - '200': - description: > - OK - - Information about zero or more VNF instances was queried - successfully. The response body shall contain representations of - zero or more VNF instances. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is in INSTANTIATED state. - The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '416': - description: > - Requested Range Not Satisfiable - - This code is returned if the requested byte range in the Range HTTP - header is not present in the requested resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}/scale': - parameters: - - name: vnfInstanceId - description: > - Identifier of the VNF instance to be scaled. This identifier can be - retrieved from the resource referenced by the "Location" HTTP header - in the response to a POST request creating a new VNF instance - resource. It can also be retrieved from the "id" attribute in the - payload body of that response. - in: path - type: string - required: true - post: - description: | - The POST method requests to scale a VNF instance resource incrementally. - parameters: - - name: ScaleVnfRequest - description: Parameters for the scale VNF operation. - in: body - required: true - schema: - type: object - required: - - type - - aspectId - 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: | - An identifier that is unique within a VNF descriptor. - 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: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "VNF LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF - instance represented by the parent resource, and that the task - resource consequently does not exist. The "ProblemDetails" structure - may be provided, including in the "detail" attribute information - about the sourceof the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is in NOT-INSTANTIATED - state, or that another lifecycle management operation is ongoing. - The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}/scale_to_level': - parameters: - - name: vnfInstanceId - description: > - Identifier of the VNF instance to be scaled to a target level. This - identifier can be retrieved from the resource referenced by the - "Location" HTTP header in the response to a POST request creating a - new VNF instance resource. It can also be retrieved from the "id" - attribute in the payload body of that response. - in: path - type: string - required: true - post: - description: > - The POST method requests to scale a VNF instance resource to a target - level. - parameters: - - name: ScaleVnfToLevelRequest - description: Parameters for the scale VNF to Level operation. - in: body - required: true - schema: - description: > - This type represents request parameters for the "Scale VNF to - Level" operation. - type: object - properties: - instantiationLevelId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - scaleInfo: - description: > - For each scaling aspect of the current deployment flavour, - indicates the target scale level to which the VNF is to be - scaled. Either the instantiationLevelId attribute or the - scaleInfo attribute shall be included. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall be 0 - and the maximum value shall be <= maxScaleLevel as - described in the VNFD. - type: integer - additionalParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "VNF LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF - instance represented by the parent resource, and that the task - resource consequently does not exist. The "ProblemDetails" structure - may be provided, including in the "detail" attribute information - about the sourceof the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is in NOT-INSTANTIATED - state, or that another lifecycle management operation is ongoing. - The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}/change_flavour': - parameters: - - name: vnfInstanceId - description: > - The identifier of the VNF instance of which the deployment flavour is - requested to be changed. This identifier can be retrieved from the - resource referenced by the "Location" HTTP header in the response to a - POST request creating a new VNF instance resource. It can also be - retrieved from the "id" attribute in the payload body of that - response. - in: path - type: string - required: true - post: - description: | - The POST method changes the deployment flavour of a VNF instance. - parameters: - - name: ChangeVnfFlavourRequest - description: Parameters for the Change VNF Flavour operation. - in: body - required: true - schema: - description: > - This type represents request parameters for the "Change VNF - flavour" operation. - type: object - required: - - newFlavourId - properties: - newFlavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - instantiationLevelId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - extVirtualLinks: - description: | - Information about external VLs to connect the VNF to. - type: array - items: - description: | - This type represents an external VL. - type: object - required: - - id - - resourceId - - extCps - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other resource - provider. It is expected to be unique within the VIM - instance. - type: string - extCps: - description: > - External CPs of the VNF to be connected to this external - VL. - type: array - items: - description: > - This type represents configuration information for - external CPs created from a CPD. - type: object - required: - - cpdId - properties: - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - cpConfig: - description: > - List of instance data that need to be configured - on the CP instances created from the respective - CPD. - type: array - items: - description: > - This type represents an externally provided link - port or network address information per instance - of an external connection point. In case a link - port is provided, the VNFM shall use that link - port when connecting the external CP to the - external VL. In a link port is not provided, the - VNFM shall create a link port on the external - VL, and use that link port to connect the - external CP to the external VL. - type: object - properties: - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - linkPortId: - description: > - An identifier with the intention of being - globally unique. - type: string - cpProtocolData: - description: > - Parameters for configuring the network - protocols on the link port that connects the - CP to a VL. The following conditions apply - to the attributes "linkPortId" and - "cpProtocolData": * The "linkPortId" and - "cpProtocolData" attributes shall both be - absent for the deletion of an existing external CP instance - addressed by cpInstanceId. - * At least one of these attributes shall be - present for a - to-be-created external CP instance or an existing external - CP instance. - * If the "linkPortId" attribute is absent, - the VNFM shall create a - link port. - * If the "cpProtocolData" attribute is - absent, the "linkPortId" - attribute shall be provided referencing a pre-created link port, - and the VNFM can use means outside the scope of the present - document to obtain the pre-configured address information for the - connection point from the resource representing the link port. - * If both "cpProtocolData" and "linkportId" - are provided, the API - consumer shall ensure that the cpProtocolData can be used with the - pre-created link port referenced by "linkPortId". - type: array - items: - description: > - This type represents network protocol - data. - type: object - required: - - layerProtocol - properties: - layerProtocol: - description: > - Identifier of layer(s) and protocol(s). - This attribute allows to signal the - addition of further types of layer and - protocol in future versions of the - present document in a - backwards-compatible way. In the current - version of the present document, only IP - over Ethernet is supported. - type: string - enum: - - IP_OVER_ETHERNET - ipOverEthernet: - description: > - This type represents network address - data for IP over Ethernet. - type: object - properties: - macAddress: - description: > - A MAC address. Representation: string - that consists of groups of two - hexadecimal digits, separated by hyphens - or colons. - type: string - format: MAC - ipAddresses: - description: > - List of IP addresses to assign to the CP - instance. Each entry represents IP - address data for fixed or dynamic IP - address assignment per subnet. If this - attribute is not present, no IP address - shall be assigned. - type: array - items: - type: object - required: - - type - properties: - type: - description: > - The type of the IP addresses. Permitted - values: IPV4, IPV6. - type: string - enum: - - IPV4 - - IPV6 - fixedAddresses: - description: > - Fixed addresses to assign (from the - subnet defined by "subnetId" if - provided). Exactly one of - "fixedAddresses", "numDynamicAddresses" - or "ipAddressRange" shall be present. - type: array - items: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - numDynamicAddresses: - description: > - Number of dynamic addresses to assign - (from the subnet defined by "subnetId" - if provided). Exactly one of - "fixedAddresses", "numDynamicAddresses" - or "ipAddressRange" shall be present. - type: integer - addressRange: - description: > - An IP address range to be used, e.g. in - case of egress connections. In case this - attribute is present, IP addresses from - the range will be used. - type: object - required: - - minAddress - - maxAddress - properties: - minAddress: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - maxAddress: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - subnetId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected - to be unique within the VIM instance. - type: string - extLinkPorts: - description: > - Externally provided link ports to be used to connect - external connection points to this external VL. If this - attribute is not present, the VNFM shall create the link - ports on the external VL. - type: array - items: - description: > - This type represents an externally provided link port - to be used to connect an external connection point to - an external VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - extManagedVirtualLinks: - description: | - Information about external VLs to connect the VNF to. - type: array - items: - type: object - required: - - id - - virtualLinkDescId - - resourceId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - virtualLinkDescId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other resource - provider. It is expected to be unique within the VIM - instance. - type: string - additionalParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "VNF LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF - instance represented by the parent resource, and that the task - resource consequently does not exist. The "ProblemDetails" structure - may be provided, including in the "detail" attribute information - about the sourceof the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is in NOT-INSTANTIATED - state, or that another lifecycle management operation is ongoing. - The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}/terminate': - parameters: - - name: vnfInstanceId - description: > - The identifier of the VNF instance to be terminated. This identifier - can be retrieved from the resource referenced by the "Location" HTTP - header in the response to a POST request creating a new VNF instance - resource. It can also be retrieved from the "id" attribute in the - payload body of that response. - in: path - type: string - required: true - post: - description: | - The POST method terminates a VNF instance. - parameters: - - name: TerminateVnfRequest - description: Parameters for the VNF termination. - in: body - required: true - schema: - type: object - required: - - terminationType - properties: - terminationType: - description: > - Indicates the type of termination is requested. Permitted - values: * FORCEFUL: The VNFM will shut down the VNF and - release the - resources immediately after accepting the request. - type: string - enum: - - FORCEFUL - additionalParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "VNF LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is in NOT-INSTANTIATED - state, or that another lifecycle management operation is ongoing. - The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}/heal': - parameters: - - name: vnfInstanceId - description: > - Identifier of the VNF instance to be healed. This identifier can be - retrieved from the resource referenced by the "Location" HTTP header - in the response to a POST request creating a new VNF instance - resource. It can also be retrieved from the "id" attribute in the - payload body of that response. - in: path - type: string - required: true - post: - description: | - The POST method requests to heal a VNF instance resource. - parameters: - - name: HealVnfRequest - description: Parameters for the Heal VNF operation. - in: body - required: true - schema: - type: object - properties: - cause: - description: | - Indicates the reason why a healing procedure is required. - type: string - vnfcInstanceId: - description: TBD - type: string - healScript: - description: TBD - type: string - additionalParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "VNF LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF - instance represented by the parent resource, and that the task - resource consequently does not exist. The "ProblemDetails" structure - may be provided, including in the "detail" attribute information - about the sourceof the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is in NOT-INSTANTIATED - state, or that another lifecycle management operation is ongoing. - The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}/operate': - parameters: - - name: vnfInstanceId - description: > - Identifier of the VNF instance to be operated. This identifier can be - retrieved from the resource referenced by the "Location" HTTP header - in the response to a POST request creating a new VNF instance - resource. It can also be retrieved from the "id" attribute in the - payload body of that response. - in: path - type: string - required: true - post: - description: > - The POST method changes the operational state of a VNF instance - resource. - parameters: - - name: OperateVnfRequest - description: Parameters for the Operate VNF operation. - in: body - required: true - schema: - description: > - This type represents request parameters for the "Operate VNF" - operation. - type: object - required: - - changeStateTo - properties: - changeStateTo: - type: string - enum: - - STARTED - - STOPPED - stopType: - description: > - * FORCEFUL: The VNFM will stop the VNF immediately after - accepting the - request. - * GRACEFUL: The VNFM will first arrange to take the VNF out of - service - after accepting the request. Once that operation is successful or once - the timer value specified in the "gracefulStopTimeout" attribute - expires, the VNFM will stop the VNF. - type: string - enum: - - FORCEFUL - - GRACEFUL - vnfcInstanceId: - description: TBD - type: string - additionalParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "VNF LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF - instance represented by the parent resource, and that the task - resource consequently does not exist. The "ProblemDetails" structure - may be provided, including in the "detail" attribute information - about the sourceof the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is in NOT-INSTANTIATED - state, or that another lifecycle management operation is ongoing. - The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_instances/{vnfInstanceId}/change_ext_vls': - parameters: - - name: vnfInstanceId - description: > - Identifier of the VNF instance of which the external connectivity is - requested to be changed. This identifier can be retrieved from the - resource referenced by the "Location" HTTP header in the response to a - POST request creating a new VNF instance resource. It can also be - retrieved from the "id" attribute in the payload body of that - response. - in: path - type: string - required: true - post: - description: | - The POST method changes the external connectivity of a VNF instance. - parameters: - - name: ChangeExtVnfConnectivityRequest - description: | - Parameters for the Change external VNF connectivity operation. - in: body - required: true - schema: - description: > - This type represents request parameters for the "Change external - VNF connectivity" operation to modify the external connectivity of - a VNF instance. - type: object - required: - - extVirtualLinks - properties: - extVirtualLinks: - description: > - Information about external VLs to change (e.g. connect the VNF - to). - type: array - items: - description: | - This type represents an external VL. - type: object - required: - - id - - resourceId - - extCps - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other resource - provider. It is expected to be unique within the VIM - instance. - type: string - extCps: - description: > - External CPs of the VNF to be connected to this external - VL. - type: array - items: - description: > - This type represents configuration information for - external CPs created from a CPD. - type: object - required: - - cpdId - properties: - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - cpConfig: - description: > - List of instance data that need to be configured - on the CP instances created from the respective - CPD. - type: array - items: - description: > - This type represents an externally provided link - port or network address information per instance - of an external connection point. In case a link - port is provided, the VNFM shall use that link - port when connecting the external CP to the - external VL. In a link port is not provided, the - VNFM shall create a link port on the external - VL, and use that link port to connect the - external CP to the external VL. - type: object - properties: - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but - may not be globally unique. - type: string - linkPortId: - description: > - An identifier with the intention of being - globally unique. - type: string - cpProtocolData: - description: > - Parameters for configuring the network - protocols on the link port that connects the - CP to a VL. The following conditions apply - to the attributes "linkPortId" and - "cpProtocolData": * The "linkPortId" and - "cpProtocolData" attributes shall both be - absent for the deletion of an existing external CP instance - addressed by cpInstanceId. - * At least one of these attributes shall be - present for a - to-be-created external CP instance or an existing external - CP instance. - * If the "linkPortId" attribute is absent, - the VNFM shall create a - link port. - * If the "cpProtocolData" attribute is - absent, the "linkPortId" - attribute shall be provided referencing a pre-created link port, - and the VNFM can use means outside the scope of the present - document to obtain the pre-configured address information for the - connection point from the resource representing the link port. - * If both "cpProtocolData" and "linkportId" - are provided, the API - consumer shall ensure that the cpProtocolData can be used with the - pre-created link port referenced by "linkPortId". - type: array - items: - description: > - This type represents network protocol - data. - type: object - required: - - layerProtocol - properties: - layerProtocol: - description: > - Identifier of layer(s) and protocol(s). - This attribute allows to signal the - addition of further types of layer and - protocol in future versions of the - present document in a - backwards-compatible way. In the current - version of the present document, only IP - over Ethernet is supported. - type: string - enum: - - IP_OVER_ETHERNET - ipOverEthernet: - description: > - This type represents network address - data for IP over Ethernet. - type: object - properties: - macAddress: - description: > - A MAC address. Representation: string - that consists of groups of two - hexadecimal digits, separated by hyphens - or colons. - type: string - format: MAC - ipAddresses: - description: > - List of IP addresses to assign to the CP - instance. Each entry represents IP - address data for fixed or dynamic IP - address assignment per subnet. If this - attribute is not present, no IP address - shall be assigned. - type: array - items: - type: object - required: - - type - properties: - type: - description: > - The type of the IP addresses. Permitted - values: IPV4, IPV6. - type: string - enum: - - IPV4 - - IPV6 - fixedAddresses: - description: > - Fixed addresses to assign (from the - subnet defined by "subnetId" if - provided). Exactly one of - "fixedAddresses", "numDynamicAddresses" - or "ipAddressRange" shall be present. - type: array - items: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - numDynamicAddresses: - description: > - Number of dynamic addresses to assign - (from the subnet defined by "subnetId" - if provided). Exactly one of - "fixedAddresses", "numDynamicAddresses" - or "ipAddressRange" shall be present. - type: integer - addressRange: - description: > - An IP address range to be used, e.g. in - case of egress connections. In case this - attribute is present, IP addresses from - the range will be used. - type: object - required: - - minAddress - - maxAddress - properties: - minAddress: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - maxAddress: - description: > - An IPV4 or IPV6 address. Representation: - In case of an IPV4 address, string that - consists of four decimal integers - separated by dots, each integer ranging - from 0 to 255. In case of an IPV6 - address, string that consists of groups - of zero to four hexadecimal digits, - separated by colons. - type: string - format: IP - subnetId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected - to be unique within the VIM instance. - type: string - extLinkPorts: - description: > - Externally provided link ports to be used to connect - external connection points to this external VL. If this - attribute is not present, the VNFM shall create the link - ports on the external VL. - type: array - items: - description: > - This type represents an externally provided link port - to be used to connect an external connection point to - an external VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - additionalParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "VNF LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: | - This type represents a VNF instance. - type: object - required: - - id - - vnfdId - - vnfProvider - - vnfProductName - - vnfSoftwareVersion - - vnfdVersion - - onboardedVnfPkgInfoId - - instantiationState - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceName: - description: > - Name of the VNF instance. This attribute can be modified with - the PATCH method. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance. This attribute - can be modified with the PATCH method. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - Provider of the VNF and the VNFD. The value is copied from the - VNFD. - type: string - vnfProductName: - description: > - Name to identify the VNF Product. The value is copied from the - VNFD. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - onboardedVnfPkgInfoId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - instantiationState: - description: | - The instantiation state of the VNF. - type: string - enum: - - NOT_INSTANTIATED - - INSTANTIATED - instantiatedVnfInfo: - type: object - required: - - flavourId - - vnfState - properties: - flavourId: - description: | - An identifier that is unique within a VNF descriptor. - type: string - vnfState: - type: string - enum: - - STARTED - - STOPPED - scaleStatus: - description: > - Scale status of the VNF, one entry per aspect. Represents - for every scaling aspect how "big" the VNF has been scaled - w.r.t. that aspect. - type: array - items: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - scaleLevel: - description: > - Indicates the scale level. The minimum value shall - be 0 and the maximum value shall be <= maxScaleLevel - as described in the VNFD. - type: integer - extCpInfo: - description: > - Information about the external CPs exposed by the VNF - instance. - type: array - minItems: 1 - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - addresses: - description: > - List of network addresses that have been configured - (statically or dynamically) on the CP. - type: array - items: - description: > - This type represents information about a network - address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in which - the IP address was assigned. May be present if - the "ipAddress" attribute is present, and - shall be absent if the "ipAddress" attribute - is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - extVirtualLinkInfo: - description: > - Information about the external VLs the VNF instance is - connected to. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port - of an external VL, i.e. a port providing - connectivity for the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - extManagedVirtualLinkInfo: - description: | - External virtual links the VNF instance is connected to. - type: array - items: - type: object - required: - - id - - vnfVirtualLinkDescId - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfVirtualLinkDescId: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - vnfLinkPorts: - description: | - Link ports of this VL. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - monitoringParameters: - description: | - Active monitoring parameters. - type: array - items: - type: object - required: - - id - - value - - timeStamp - properties: - id: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - name: - description: > - Human readable name of the monitoring parameter, as - defined in the VNFD. - type: string - value: - description: > - Value of the monitoring parameter known to the VNFM - (e.g. obtained for autoscaling purposes). The type - of the "value" attribute (i.e. scalar, structure - (Object in JSON), or array (of scalars, arrays or - structures/Objects)) is assumed to be defined in an - external measurement specification outside the scope - of the present document. - type: object - timeStamp: - description: > - Represents the point in time when the measurement - has been performed, as known to the VNFM. Should be - formatted according to ETF RFC 3339. - type: string - localizationLanguage: - description: > - Information about localization language of the VNF - (includes e.g. strings in the VNFD). The localization - languages supported by a VNF can be declared in the VNFD, - and localization language selection can take place at - instantiation time. The value shall comply with the format - defined in IETF RFC 5646. - type: string - vnfcResourceInfo: - description: > - Information about the virtualised compute and storage - resources used by the VNFCs of the VNF instance. - type: array - items: - description: > - This type represents the information on virtualised - compute and storage resources used by a VNFC in a VNF - instance. - type: object - required: - - id - - vduId - - computeResource - - vnfcCpInfo - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - storageResourceIds: - description: > - References to the VirtualStorage resources. The - value refers to a VirtualStorageResourceInfo item in - the VnfInstance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfcCpInfo: - description: > - CPs of the VNFC instance. Shall be present when that - particular CP of the VNFC instance is associated to - an external CP of the VNF instance. May be present - otherwise. - type: array - items: - type: object - required: - - id - - cpdId - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - cpdId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - vnfExtCpId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - addresses: - description: > - This type represents information about a - network address that has been assigned. - type: object - required: - - macAddress - properties: - macAddress: - description: | - Assigned MAC address. - type: string - ipAddress: - description: > - IP address. Present if an IP address was - assigned. - type: string - subnetIpRanges: - description: > - IP address ranges defining the subnet in - which the IP address was assigned. May be - present if the "ipAddress" attribute is - present, and shall be absent if the - "ipAddress" attribute is not present. - type: array - items: - type: object - required: - - minIpAddress - - maxIpAddress - properties: - minIpAddress: - description: > - Lowest IP address belonging to the - range. - type: string - format: ipaddress - maxIpAddress: - description: > - Highest IP address belonging to the - range. - type: string - format: ipaddress - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualLinkResourceInfo: - description: > - Information about the virtualised network resources used - by the VLs of the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by an - internal VL instance in a VNF instance. - type: object - required: - - id - - virtualLinkDescId - - networkResource - - vnfLinkPorts - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfLinkPorts: - description: > - Links ports of this VL. Shall be present when the - linkPort is used for external connectivity by the - VNF (refer to VnfLinkPort). May be present - otherwise. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that - allows addressing a virtualised resource that - is used by a VNF instance. Information about - the resource is available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or - other resource provider. It is expected to - be unique within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the - VIM or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the - respective type within a VNF instance, but may - not be globally unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - virtualStorageResourceInfo: - description: > - Information on the virtualised storage resource(s) used as - storage for the VNF instance. - type: array - items: - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - reservationId: - description: > - An identifier with the intention of being globally - unique. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfcInfo: - description: TBD - type: string - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - indicators: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - instantiate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - terminate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scale: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - scaleToLevel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeFlavour: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - heal: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - operate: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - changeExtConn: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - description: | - An identifier with the intention of being globally unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name - listed in this attribute. The attributes "vnfInstanceIds" and - "vnfInstanceNames" are alternatives to reference to particular - VNF Instances in a filter. They should not be used both in the - same filter instance, but one alternative should be chosen. - type: array - items: - type: string - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that another LCM operation is ongoing. The response body - shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - /vnf_lcm_op_occs: - get: - description: > - The client can use this method to query status information about - multiple VNF lifecycle management operation occurrences. - responses: - '200': - description: > - OK - - Status information for zero or more VNF lifecycle management - operation occurrences was queried successfully. The response body - shall contain status information about zero or more VNF lifecycle - operation occurrences. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a VNF lifecycle management operation - occurrence. - type: object - required: - - id - - operationState - - stateEnteredTime - - startTime - - vnfInstanceId - - operation - - isAutomaticInvocation - - operationParams - - isCancelPending - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - operationState: - description: > - Value | Description ------|------------ STARTING | The LCM - operation is starting. PROCESSING | The LCM operation is - currently in execution. COMPLETED | he LCM operation has been - completed successfully. FAILED_TEMP | The LCM operation has - failed and execution has stopped, but the execution of the - operation is not considered to be closed. FAILED | The LCM - operation has failed and it cannot be retried or rolled back, - as it is determined that such action won't succeed. - ROLLING_BACK | The LCM operation is currently being rolled - back. ROLLED_BACK | The LCM operation has been successfully - rolled back, i.e. The state of the VNF prior to the original - operation invocation has been restored as closely as possible. - type: string - enum: - - STARTING - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK - stateEnteredTime: - description: | - Date-time when the current state was entered. - type: string - format: date-time - startTime: - description: | - Date-time of the start of the operation. - type: string - format: date-time - vnfInstanceId: - description: | - An identifier with the intention of being globally unique. - type: string - grantId: - description: | - An identifier with the intention of being globally unique. - type: string - operation: - description: > - Value | Description ------|------------ INSTANTIATE | - Represents the "Instantiate VNF" LCM operation. SCALE | - Represents the "Scale VNF" LCM operation. SCALE_TO_LEVEL | - Represents the "Scale VNF to Level" LCM operation. - CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM - operation. TERMINATE | Represents the "Terminate VNF" LCM - operation. HEAL | Represents the "Heal VNF" LCM operation. - OPERATE | Represents the "Operate VNF" LCM operation. - CHANGE_EXT_CONN | Represents the "Change external VNF - connectivity" LCM operation. MODIFY_INFO | Represents the - "Modify VNF Information" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - isAutomaticInvocation: - description: > - Set to true if this VNF LCM operation occurrence has been - triggered by an automated procedure inside the VNFM (i.e. - ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf - triggered by auto-heal). Set to false otherwise. - type: boolean - operationParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - isCancelPending: - description: > - If the VNF LCM operation occurrence is in "STARTING", - "PROCESSING" or "ROLLING_BACK" state and the operation is - being cancelled, this attribute shall be set to true. - Otherwise, it shall be set to false. - type: boolean - cancelMode: - description: > - Cancellation mode. GRACEFUL: The VNFM shall not start any new - resource management operation and shall wait for the ongoing - resource management operations in the underlying system, - typically the VIM, to finish execution or to time out. After - that, the VNFM shall put the operation occurrence into the - FAILED_TEMP state. FORCEFUL: The VNFM shall not start any new - resource management operation, shall cancel the ongoing - resource management operations in the underlying system, - typically the VIM, and shall wait for the cancellation to - finish or to time out. After that, the VNFM shall put the - operation occurrence into the FAILED_TEMP state. - type: string - enum: - - GRACEFUL - - FORCEFUL - error: - description: > - The definition of the general "ProblemDetails" data structure - from IETF RFC 7807 [19] is reproduced inthis structure. - Compared to the general framework defined in IETF RFC 7807 - [19], the "status" and "detail" attributes are mandated to be - included by the present document, to ensure that the response - contains additional textual information about an error. IETF - RFC 7807 [19] foresees extensibility of the "ProblemDetails" - type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to - define additional attributes that provide more information - about the error. The description column only provides some - explanation of the meaning to Facilitate understanding of the - design. For a full description, see IETF RFC 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that - identifies the problem type. It is encouraged that the URI - provides human-readable documentation for the problem - (e.g. using HTML) when dereferenced. When this member is - not present, its value is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It - should not change from occurrence to occurrence of the - problem, except for purposes of localization. If type is - given and other than "about:blank", this attribute shall - also be provided. A short, human-readable summary of the - problem type. It SHOULD NOT change from occurrence to - occurrence of the problem, except for purposes of - localization (e.g., using proactive content negotiation; - see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by - the origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence - of the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of - the problem. It may yield further information if - dereferenced. - type: string - format: URI - resourceChanges: - description: > - This attribute contains information about the cumulative - changes to virtualised resources that were performed so far by - the LCM operation since its start, if applicable. - type: object - properties: - affectedVnfcs: - description: > - Information about VNFC instances that were affected during - the lifecycle operation. This allows the NFVO to obtain - the information contained in the latest "result" - notification if it has not received it due to an error or - a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary VNFCs. - type: object - required: - - id - - vduId - - changeType - - computeResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY For a - temporary resource, an AffectedVnfc structure exists - as long as the temporary resource exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - affectedVnfcCpIds: - description: > - Identifiers of CP(s) of the VNFC instance that were - affected by the change. Shall be present for those - affected CPs of the VNFC instance that are - associated to an external CP of the VNF instance. - May be present for further affected CPs of the VNFC - instance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - addedStorageResourceIds: - description: > - References to VirtualStorage resources that have - been added. Each value refers to a - VirtualStorageResourceInfo item in the VnfInstance - that was added to the VNFC. It shall be provided if - at least one storage resource was added to the VNFC. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - removedStorageResourceIds: - description: > - References to VirtualStorage resources that have - been removed. The value contains the identifier of a - VirtualStorageResourceInfo item that has been - removed from the VNFC, and might no longer exist in - the VnfInstance. It shall be provided if at least - one storage resource was removed from the VNFC. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - affectedVirtualLinks: - description: > - Information about VL instances that were affected during - the lifecycle operation. This allows the NFVO to obtain - the information contained in the latest "result" - notification if it has not received it due to an error or - a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary VLs. - type: object - required: - - id - - virtualLinkDescId - - changeType - - networkResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY * - LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary - resource, an AffectedVirtualLink structure exists as - long as the temporary resource exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - - LINK_PORT_ADDED - - LINK_PORT_REMOVED - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - affectedVirtualStorages: - description: > - Information about virtualised storage instances that were - affected during the lifecycle operation. This allows the - NFVO to obtain the information contained in the latest - "result" notification if it has not received it due to an - error or a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary virtual storage resources. - type: object - required: - - id - - virtualStorageDescId - - changeType - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY For a - temporary resource, an AffectedVirtualStorage - structure exists as long as the temporary resource - exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - changedInfo: - description: > - This type represents attribute modifications that were - performed on an "Individual VNF instance" resource. The - attributes that can be included consist of those requested to - be modified explicitly in the "VnfInfoModificationRequest" - data structure, and additional attributes of the "VnfInstance" - data structure that were modified implicitly e.g. when - modifying the referenced VNF package. - type: object - properties: - vnfInstanceName: - description: > - If present, this attribute signals modifications of the - "vnfInstanceName" attribute in "VnfInstance". - type: string - vnfInstanceDescription: - description: > - If present, this attribute signals modifications of the - "vnfInstanceDescription" attribute in "VnfInstance". - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - vimConnectionInfo: - description: > - If present, this attribute signals modifications of - certain entries in the "vimConnectionInfo" attribute array - in "VnfInstance". - type: array - items: - description: > - This type represents parameters to connect to a VIM for - managing the resources of a VNF instance. This structure - is used to convey VIM-related parameters over the - Or-Vnfm interface. Additional parameters for a VIM may - be configured into the VNFM by means outside the scope - of the present document, and bound to the identifier of - that VIM. - type: object - required: - - id - - vimType - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vimId: - description: > - An identifier with the intention of being globally - unique. - type: string - vimType: - description: > - Discriminator for the different types of the VIM - information. The value of this attribute determines - the structure of the "interfaceInfo" and - "accessInfo" attributes, based on the type of the - VIM. The set of permitted values is expected to - change over time as new types or versions of VIMs - become available. The ETSI NFV registry of - VIM-related information provides access to - information about VimConnectionInfo definitions for - various VIM types. The structure of the registry is - defined in Annex C of SOL003. - type: string - interfaceInfo: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - accessInfo: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - extra: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfPkgId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - If present, this attribute signals modifications of the - "vnfProvider" attribute in "VnfInstance". If present, this - attribute (which depends on the value of the "vnfPkgId" - attribute) was modified implicitly following a request to - modify the "vnfPkgId" attribute, by copying the value of - this attribute from the VNFD in the VNF Package identified - by the "vnfPkgId” attribute. - type: string - vnfProductName: - description: > - If present, this attribute signals modifications of the - "vnfProductName" attribute in "VnfInstance". If present, - this attribute (which depends on the value of the - "vnfPkgId" attribute) was modified implicitly following a - request to modify the "vnfPkgId" attribute, by copying the - value of this attribute from the VNFD in the VNF Package - identified by the "vnfPkgId” attribute. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - changedExtConnectivity: - description: > - Information about changed external connectivity, if - applicable. This allows the NFVO to obtain the information - contained in the latest "result" notification if it has not - received it due to an error or a wrongly configured - subscription filter. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. Information about the resource is available - from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or the - resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port of - an external VL, i.e. a port providing connectivity for - the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - - vnfInstance - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstance: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - grant: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - cancel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - retry: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - rollback: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - fail: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - Another request is in progress that prohibits the fulfilment of the - current request, or the current resource state is inconsistent with - the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_lcm_op_occs/{vnfLcmOpOccId}': - parameters: - - name: vnfLcmOpOccId - description: > - Identifier of a VNF lifecycle management operation occurrence. This - identifier can be retrieved from the resource referenced by the - "Location" HTTP header in the response to a PATCH or POST request - triggering a VNF LCM operation. It can also be retrieved from the - "vnfLcmOpOccId" attribute in the - VnfLcmOperationOccurrenceNotification. - in: path - required: true - type: string - get: - description: > - The client can use this method to retrieve status information about a - VNF lifecycle management operation occurrence by reading an individual - "VNF LCM operation occurrence" resource. - responses: - '200': - description: > - OK - - Information about an individual VNF instance was queried - successfully. The response body shall contain status information - about a VNF lifecycle management operation occurrence. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a VNF lifecycle management operation - occurrence. - type: object - required: - - id - - operationState - - stateEnteredTime - - startTime - - vnfInstanceId - - operation - - isAutomaticInvocation - - operationParams - - isCancelPending - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - operationState: - description: > - Value | Description ------|------------ STARTING | The LCM - operation is starting. PROCESSING | The LCM operation is - currently in execution. COMPLETED | he LCM operation has been - completed successfully. FAILED_TEMP | The LCM operation has - failed and execution has stopped, but the execution of the - operation is not considered to be closed. FAILED | The LCM - operation has failed and it cannot be retried or rolled back, - as it is determined that such action won't succeed. - ROLLING_BACK | The LCM operation is currently being rolled - back. ROLLED_BACK | The LCM operation has been successfully - rolled back, i.e. The state of the VNF prior to the original - operation invocation has been restored as closely as possible. - type: string - enum: - - STARTING - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK - stateEnteredTime: - description: | - Date-time when the current state was entered. - type: string - format: date-time - startTime: - description: | - Date-time of the start of the operation. - type: string - format: date-time - vnfInstanceId: - description: | - An identifier with the intention of being globally unique. - type: string - grantId: - description: | - An identifier with the intention of being globally unique. - type: string - operation: - description: > - Value | Description ------|------------ INSTANTIATE | - Represents the "Instantiate VNF" LCM operation. SCALE | - Represents the "Scale VNF" LCM operation. SCALE_TO_LEVEL | - Represents the "Scale VNF to Level" LCM operation. - CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM - operation. TERMINATE | Represents the "Terminate VNF" LCM - operation. HEAL | Represents the "Heal VNF" LCM operation. - OPERATE | Represents the "Operate VNF" LCM operation. - CHANGE_EXT_CONN | Represents the "Change external VNF - connectivity" LCM operation. MODIFY_INFO | Represents the - "Modify VNF Information" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - isAutomaticInvocation: - description: > - Set to true if this VNF LCM operation occurrence has been - triggered by an automated procedure inside the VNFM (i.e. - ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf - triggered by auto-heal). Set to false otherwise. - type: boolean - operationParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - isCancelPending: - description: > - If the VNF LCM operation occurrence is in "STARTING", - "PROCESSING" or "ROLLING_BACK" state and the operation is - being cancelled, this attribute shall be set to true. - Otherwise, it shall be set to false. - type: boolean - cancelMode: - description: > - Cancellation mode. GRACEFUL: The VNFM shall not start any new - resource management operation and shall wait for the ongoing - resource management operations in the underlying system, - typically the VIM, to finish execution or to time out. After - that, the VNFM shall put the operation occurrence into the - FAILED_TEMP state. FORCEFUL: The VNFM shall not start any new - resource management operation, shall cancel the ongoing - resource management operations in the underlying system, - typically the VIM, and shall wait for the cancellation to - finish or to time out. After that, the VNFM shall put the - operation occurrence into the FAILED_TEMP state. - type: string - enum: - - GRACEFUL - - FORCEFUL - error: - description: > - The definition of the general "ProblemDetails" data structure - from IETF RFC 7807 [19] is reproduced inthis structure. - Compared to the general framework defined in IETF RFC 7807 - [19], the "status" and "detail" attributes are mandated to be - included by the present document, to ensure that the response - contains additional textual information about an error. IETF - RFC 7807 [19] foresees extensibility of the "ProblemDetails" - type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to - define additional attributes that provide more information - about the error. The description column only provides some - explanation of the meaning to Facilitate understanding of the - design. For a full description, see IETF RFC 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that - identifies the problem type. It is encouraged that the URI - provides human-readable documentation for the problem - (e.g. using HTML) when dereferenced. When this member is - not present, its value is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It - should not change from occurrence to occurrence of the - problem, except for purposes of localization. If type is - given and other than "about:blank", this attribute shall - also be provided. A short, human-readable summary of the - problem type. It SHOULD NOT change from occurrence to - occurrence of the problem, except for purposes of - localization (e.g., using proactive content negotiation; - see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by - the origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence - of the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of - the problem. It may yield further information if - dereferenced. - type: string - format: URI - resourceChanges: - description: > - This attribute contains information about the cumulative - changes to virtualised resources that were performed so far by - the LCM operation since its start, if applicable. - type: object - properties: - affectedVnfcs: - description: > - Information about VNFC instances that were affected during - the lifecycle operation. This allows the NFVO to obtain - the information contained in the latest "result" - notification if it has not received it due to an error or - a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary VNFCs. - type: object - required: - - id - - vduId - - changeType - - computeResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY For a - temporary resource, an AffectedVnfc structure exists - as long as the temporary resource exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - affectedVnfcCpIds: - description: > - Identifiers of CP(s) of the VNFC instance that were - affected by the change. Shall be present for those - affected CPs of the VNFC instance that are - associated to an external CP of the VNF instance. - May be present for further affected CPs of the VNFC - instance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - addedStorageResourceIds: - description: > - References to VirtualStorage resources that have - been added. Each value refers to a - VirtualStorageResourceInfo item in the VnfInstance - that was added to the VNFC. It shall be provided if - at least one storage resource was added to the VNFC. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - removedStorageResourceIds: - description: > - References to VirtualStorage resources that have - been removed. The value contains the identifier of a - VirtualStorageResourceInfo item that has been - removed from the VNFC, and might no longer exist in - the VnfInstance. It shall be provided if at least - one storage resource was removed from the VNFC. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - affectedVirtualLinks: - description: > - Information about VL instances that were affected during - the lifecycle operation. This allows the NFVO to obtain - the information contained in the latest "result" - notification if it has not received it due to an error or - a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary VLs. - type: object - required: - - id - - virtualLinkDescId - - changeType - - networkResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY * - LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary - resource, an AffectedVirtualLink structure exists as - long as the temporary resource exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - - LINK_PORT_ADDED - - LINK_PORT_REMOVED - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - affectedVirtualStorages: - description: > - Information about virtualised storage instances that were - affected during the lifecycle operation. This allows the - NFVO to obtain the information contained in the latest - "result" notification if it has not received it due to an - error or a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary virtual storage resources. - type: object - required: - - id - - virtualStorageDescId - - changeType - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY For a - temporary resource, an AffectedVirtualStorage - structure exists as long as the temporary resource - exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - changedInfo: - description: > - This type represents attribute modifications that were - performed on an "Individual VNF instance" resource. The - attributes that can be included consist of those requested to - be modified explicitly in the "VnfInfoModificationRequest" - data structure, and additional attributes of the "VnfInstance" - data structure that were modified implicitly e.g. when - modifying the referenced VNF package. - type: object - properties: - vnfInstanceName: - description: > - If present, this attribute signals modifications of the - "vnfInstanceName" attribute in "VnfInstance". - type: string - vnfInstanceDescription: - description: > - If present, this attribute signals modifications of the - "vnfInstanceDescription" attribute in "VnfInstance". - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - vimConnectionInfo: - description: > - If present, this attribute signals modifications of - certain entries in the "vimConnectionInfo" attribute array - in "VnfInstance". - type: array - items: - description: > - This type represents parameters to connect to a VIM for - managing the resources of a VNF instance. This structure - is used to convey VIM-related parameters over the - Or-Vnfm interface. Additional parameters for a VIM may - be configured into the VNFM by means outside the scope - of the present document, and bound to the identifier of - that VIM. - type: object - required: - - id - - vimType - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vimId: - description: > - An identifier with the intention of being globally - unique. - type: string - vimType: - description: > - Discriminator for the different types of the VIM - information. The value of this attribute determines - the structure of the "interfaceInfo" and - "accessInfo" attributes, based on the type of the - VIM. The set of permitted values is expected to - change over time as new types or versions of VIMs - become available. The ETSI NFV registry of - VIM-related information provides access to - information about VimConnectionInfo definitions for - various VIM types. The structure of the registry is - defined in Annex C of SOL003. - type: string - interfaceInfo: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - accessInfo: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - extra: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfPkgId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - If present, this attribute signals modifications of the - "vnfProvider" attribute in "VnfInstance". If present, this - attribute (which depends on the value of the "vnfPkgId" - attribute) was modified implicitly following a request to - modify the "vnfPkgId" attribute, by copying the value of - this attribute from the VNFD in the VNF Package identified - by the "vnfPkgId” attribute. - type: string - vnfProductName: - description: > - If present, this attribute signals modifications of the - "vnfProductName" attribute in "VnfInstance". If present, - this attribute (which depends on the value of the - "vnfPkgId" attribute) was modified implicitly following a - request to modify the "vnfPkgId" attribute, by copying the - value of this attribute from the VNFD in the VNF Package - identified by the "vnfPkgId” attribute. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - changedExtConnectivity: - description: > - Information about changed external connectivity, if - applicable. This allows the NFVO to obtain the information - contained in the latest "result" notification if it has not - received it due to an error or a wrongly configured - subscription filter. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. Information about the resource is available - from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or the - resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port of - an external VL, i.e. a port providing connectivity for - the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - - vnfInstance - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstance: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - grant: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - cancel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - retry: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - rollback: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - fail: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - Another request is in progress that prohibits the fulfilment of the - current request, or the current resource state is inconsistent with - the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_lcm_op_occs/{vnfLcmOpOccId}/retry': - parameters: - - name: vnfLcmOpOccId - description: > - Identifier of a VNF lifecycle management operation occurrence to be - retried. This identifier can be retrieved from the resource referenced - by the "Location" HTTP header in the response to a PATCH or POST - request triggering a VNF LCM operation. It can also be retrieved from - the "vnfLcmOpOccId" attribute in the - VnfLcmOperationOccurrenceNotification. - in: path - required: true - type: string - post: - description: > - The POST method initiates retrying a VNF lifecycle operation if that - operation has experienced a temporary failure, i.e. the related "VNF LCM - operation occurrence" resource is in "FAILED_TEMP" state. - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but processing has not been - completed. The response shall have an empty payload body. - headers: - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF LCM - operation occurrence represented by the parent resource, and that - the task resource consequently does not exist. The "ProblemDetails" - structure may be provided, including in the "detail" attribute - information about the sourceof the problem, e.g. a wrong resource - URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is not in FAILED_TEMP state, - or another error handling action is starting, such as rollback or - fail. The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_lcm_op_occs/{vnfLcmOpOccId}/rollback': - parameters: - - name: vnfLcmOpOccId - description: > - Identifier of a VNF lifecycle management operation occurrence to be be - rolled back. This identifier can be retrieved from the resource - referenced by the "Location" HTTP header in the response to a PATCH or - POST request triggering a VNF LCM operation. It can also be retrieved - from the "vnfLcmOpOccId" attribute in the - VnfLcmOperationOccurrenceNotification. - in: path - required: true - type: string - post: - description: > - The POST method initiates rolling back a VNF lifecycle operation if that - operation has experienced a temporary failure, i.e. the related "VNF LCM - operation occurrence" resource is in "FAILED_TEMP" state. - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but processing has not been - completed. The response shall have an empty payload body. - headers: - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF LCM - operation occurrence represented by the parent resource, and that - the task resource consequently does not exist. The "ProblemDetails" - structure may be provided, including in the "detail" attribute - information about the sourceof the problem, e.g. a wrong resource - URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is not in FAILED_TEMP state, - or another error handling action is starting, such as rollback or - fail. The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_lcm_op_occs/{vnfLcmOpOccId}/fail': - parameters: - - name: vnfLcmOpOccId - description: > - Identifier of a VNF lifecycle management operation occurrence to be be - marked as "failed". This identifier can be retrieved from the resource - referenced by the "Location" HTTP header in the response to a PATCH or - POST request triggering a VNF LCM operation. It can also be retrieved - from the "vnfLcmOpOccId" attribute in the - VnfLcmOperationOccurrenceNotification. - in: path - required: true - type: string - post: - description: > - The POST method marks a VNF lifecycle management operation occurrence as - "finally failed" if that operation occurrence is in "FAILED_TEMP" state. - responses: - '200': - description: > - OK - - The state of the VNF lifecycle management operation occurrence was - changed successfully. The response shall include a representation of - the VNF lifecycle operation occurrence resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a VNF lifecycle management operation - occurrence. - type: object - required: - - id - - operationState - - stateEnteredTime - - startTime - - vnfInstanceId - - operation - - isAutomaticInvocation - - operationParams - - isCancelPending - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - operationState: - description: > - Value | Description ------|------------ STARTING | The LCM - operation is starting. PROCESSING | The LCM operation is - currently in execution. COMPLETED | he LCM operation has been - completed successfully. FAILED_TEMP | The LCM operation has - failed and execution has stopped, but the execution of the - operation is not considered to be closed. FAILED | The LCM - operation has failed and it cannot be retried or rolled back, - as it is determined that such action won't succeed. - ROLLING_BACK | The LCM operation is currently being rolled - back. ROLLED_BACK | The LCM operation has been successfully - rolled back, i.e. The state of the VNF prior to the original - operation invocation has been restored as closely as possible. - type: string - enum: - - STARTING - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK - stateEnteredTime: - description: | - Date-time when the current state was entered. - type: string - format: date-time - startTime: - description: | - Date-time of the start of the operation. - type: string - format: date-time - vnfInstanceId: - description: | - An identifier with the intention of being globally unique. - type: string - grantId: - description: | - An identifier with the intention of being globally unique. - type: string - operation: - description: > - Value | Description ------|------------ INSTANTIATE | - Represents the "Instantiate VNF" LCM operation. SCALE | - Represents the "Scale VNF" LCM operation. SCALE_TO_LEVEL | - Represents the "Scale VNF to Level" LCM operation. - CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM - operation. TERMINATE | Represents the "Terminate VNF" LCM - operation. HEAL | Represents the "Heal VNF" LCM operation. - OPERATE | Represents the "Operate VNF" LCM operation. - CHANGE_EXT_CONN | Represents the "Change external VNF - connectivity" LCM operation. MODIFY_INFO | Represents the - "Modify VNF Information" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - isAutomaticInvocation: - description: > - Set to true if this VNF LCM operation occurrence has been - triggered by an automated procedure inside the VNFM (i.e. - ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf - triggered by auto-heal). Set to false otherwise. - type: boolean - operationParams: - description: > - This type represents a list of key-value pairs. The order of - the pairs in the list is not significant. In JSON, a set of - key- value pairs is represented as an object. It shall comply - with the provisions defined in clause 4 of IETF RFC 7159. - type: object - isCancelPending: - description: > - If the VNF LCM operation occurrence is in "STARTING", - "PROCESSING" or "ROLLING_BACK" state and the operation is - being cancelled, this attribute shall be set to true. - Otherwise, it shall be set to false. - type: boolean - cancelMode: - description: > - Cancellation mode. GRACEFUL: The VNFM shall not start any new - resource management operation and shall wait for the ongoing - resource management operations in the underlying system, - typically the VIM, to finish execution or to time out. After - that, the VNFM shall put the operation occurrence into the - FAILED_TEMP state. FORCEFUL: The VNFM shall not start any new - resource management operation, shall cancel the ongoing - resource management operations in the underlying system, - typically the VIM, and shall wait for the cancellation to - finish or to time out. After that, the VNFM shall put the - operation occurrence into the FAILED_TEMP state. - type: string - enum: - - GRACEFUL - - FORCEFUL - error: - description: > - The definition of the general "ProblemDetails" data structure - from IETF RFC 7807 [19] is reproduced inthis structure. - Compared to the general framework defined in IETF RFC 7807 - [19], the "status" and "detail" attributes are mandated to be - included by the present document, to ensure that the response - contains additional textual information about an error. IETF - RFC 7807 [19] foresees extensibility of the "ProblemDetails" - type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to - define additional attributes that provide more information - about the error. The description column only provides some - explanation of the meaning to Facilitate understanding of the - design. For a full description, see IETF RFC 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that - identifies the problem type. It is encouraged that the URI - provides human-readable documentation for the problem - (e.g. using HTML) when dereferenced. When this member is - not present, its value is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It - should not change from occurrence to occurrence of the - problem, except for purposes of localization. If type is - given and other than "about:blank", this attribute shall - also be provided. A short, human-readable summary of the - problem type. It SHOULD NOT change from occurrence to - occurrence of the problem, except for purposes of - localization (e.g., using proactive content negotiation; - see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by - the origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence - of the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of - the problem. It may yield further information if - dereferenced. - type: string - format: URI - resourceChanges: - description: > - This attribute contains information about the cumulative - changes to virtualised resources that were performed so far by - the LCM operation since its start, if applicable. - type: object - properties: - affectedVnfcs: - description: > - Information about VNFC instances that were affected during - the lifecycle operation. This allows the NFVO to obtain - the information contained in the latest "result" - notification if it has not received it due to an error or - a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary VNFCs. - type: object - required: - - id - - vduId - - changeType - - computeResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - vduId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY For a - temporary resource, an AffectedVnfc structure exists - as long as the temporary resource exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - computeResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - affectedVnfcCpIds: - description: > - Identifiers of CP(s) of the VNFC instance that were - affected by the change. Shall be present for those - affected CPs of the VNFC instance that are - associated to an external CP of the VNF instance. - May be present for further affected CPs of the VNFC - instance. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - addedStorageResourceIds: - description: > - References to VirtualStorage resources that have - been added. Each value refers to a - VirtualStorageResourceInfo item in the VnfInstance - that was added to the VNFC. It shall be provided if - at least one storage resource was added to the VNFC. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - removedStorageResourceIds: - description: > - References to VirtualStorage resources that have - been removed. The value contains the identifier of a - VirtualStorageResourceInfo item that has been - removed from the VNFC, and might no longer exist in - the VnfInstance. It shall be provided if at least - one storage resource was removed from the VNFC. - type: array - items: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - affectedVirtualLinks: - description: > - Information about VL instances that were affected during - the lifecycle operation. This allows the NFVO to obtain - the information contained in the latest "result" - notification if it has not received it due to an error or - a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary VLs. - type: object - required: - - id - - virtualLinkDescId - - changeType - - networkResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualLinkDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY * - LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary - resource, an AffectedVirtualLink structure exists as - long as the temporary resource exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - - LINK_PORT_ADDED - - LINK_PORT_REMOVED - networkResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - affectedVirtualStorages: - description: > - Information about virtualised storage instances that were - affected during the lifecycle operation. This allows the - NFVO to obtain the information contained in the latest - "result" notification if it has not received it due to an - error or a wrongly configured subscription filter. - type: array - items: - description: > - This type provides information about added, deleted, - modified and temporary virtual storage resources. - type: object - required: - - id - - virtualStorageDescId - - changeType - - storageResource - properties: - id: - description: > - An identifier that is unique for the respective type - within a VNF instance, but may not be globally - unique. - type: string - virtualStorageDescId: - description: > - An identifier that is unique within a VNF - descriptor. - type: string - changeType: - description: > - Signals the type of change. Permitted values: * - ADDED * REMOVED * MODIFIED * TEMPORARY For a - temporary resource, an AffectedVirtualStorage - structure exists as long as the temporary resource - exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - storageResource: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a - VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or - the resource provider. - type: string - metadata: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - changedInfo: - description: > - This type represents attribute modifications that were - performed on an "Individual VNF instance" resource. The - attributes that can be included consist of those requested to - be modified explicitly in the "VnfInfoModificationRequest" - data structure, and additional attributes of the "VnfInstance" - data structure that were modified implicitly e.g. when - modifying the referenced VNF package. - type: object - properties: - vnfInstanceName: - description: > - If present, this attribute signals modifications of the - "vnfInstanceName" attribute in "VnfInstance". - type: string - vnfInstanceDescription: - description: > - If present, this attribute signals modifications of the - "vnfInstanceDescription" attribute in "VnfInstance". - type: string - vnfConfigurableProperties: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - metadata: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - extensions: - description: > - This type represents a list of key-value pairs. The order - of the pairs in the list is not significant. In JSON, a - set of key- value pairs is represented as an object. It - shall comply with the provisions defined in clause 4 of - IETF RFC 7159. - type: object - vimConnectionInfo: - description: > - If present, this attribute signals modifications of - certain entries in the "vimConnectionInfo" attribute array - in "VnfInstance". - type: array - items: - description: > - This type represents parameters to connect to a VIM for - managing the resources of a VNF instance. This structure - is used to convey VIM-related parameters over the - Or-Vnfm interface. Additional parameters for a VIM may - be configured into the VNFM by means outside the scope - of the present document, and bound to the identifier of - that VIM. - type: object - required: - - id - - vimType - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - vimId: - description: > - An identifier with the intention of being globally - unique. - type: string - vimType: - description: > - Discriminator for the different types of the VIM - information. The value of this attribute determines - the structure of the "interfaceInfo" and - "accessInfo" attributes, based on the type of the - VIM. The set of permitted values is expected to - change over time as new types or versions of VIMs - become available. The ETSI NFV registry of - VIM-related information provides access to - information about VimConnectionInfo definitions for - various VIM types. The structure of the registry is - defined in Annex C of SOL003. - type: string - interfaceInfo: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - accessInfo: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - extra: - description: > - This type represents a list of key-value pairs. The - order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as - an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - vnfPkgId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfdId: - description: | - An identifier with the intention of being globally unique. - type: string - vnfProvider: - description: > - If present, this attribute signals modifications of the - "vnfProvider" attribute in "VnfInstance". If present, this - attribute (which depends on the value of the "vnfPkgId" - attribute) was modified implicitly following a request to - modify the "vnfPkgId" attribute, by copying the value of - this attribute from the VNFD in the VNF Package identified - by the "vnfPkgId” attribute. - type: string - vnfProductName: - description: > - If present, this attribute signals modifications of the - "vnfProductName" attribute in "VnfInstance". If present, - this attribute (which depends on the value of the - "vnfPkgId" attribute) was modified implicitly following a - request to modify the "vnfPkgId" attribute, by copying the - value of this attribute from the VNFD in the VNF Package - identified by the "vnfPkgId” attribute. - type: string - vnfSoftwareVersion: - description: | - A Version. - type: string - vnfdVersion: - description: | - A Version. - type: string - changedExtConnectivity: - description: > - Information about changed external connectivity, if - applicable. This allows the NFVO to obtain the information - contained in the latest "result" notification if it has not - received it due to an error or a wrongly configured - subscription filter. - type: array - items: - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by a VNF - instance. Information about the resource is available - from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or the - resource provider. - type: string - extLinkPorts: - description: | - Link ports of this VL. - type: array - items: - description: > - This type represents information about a link port of - an external VL, i.e. a port providing connectivity for - the VNF to an NS VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - An identifier with the intention of being globally - unique. - type: string - resourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows - addressing a virtualised resource that is used by - a VNF instance. Information about the resource is - available from the VIM. - properties: - vimConnectionId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceProviderId: - description: > - An identifier with the intention of being - globally unique. - type: string - resourceId: - description: > - An identifier maintained by the VIM or other - resource provider. It is expected to be unique - within the VIM instance. - type: string - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM - or the resource provider. - type: string - cpInstanceId: - description: > - An identifier that is unique for the respective - type within a VNF instance, but may not be - globally unique. - type: string - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - - vnfInstance - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - vnfInstance: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - grant: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - cancel: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - retry: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - rollback: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - fail: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF LCM - operation occurrence represented by the parent resource, and that - the task resource consequently does not exist. The "ProblemDetails" - structure may be provided, including in the "detail" attribute - information about the sourceof the problem, e.g. a wrong resource - URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - The operation cannot be executed currently, due to a conflict with - the state of the VNF instance resource. Typically, this is due to - the fact that the VNF instance resource is not in FAILED_TEMP state, - or another error handling action is starting, such as rollback or - fail. The response body shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/vnf_lcm_op_occs/{vnfLcmOpOccId}/cancel': - parameters: - - name: vnfLcmOpOccId - description: > - Identifier of a VNF lifecycle management operation occurrence to be be - cancelled. This identifier can be retrieved from the resource - referenced by the "Location" HTTP header in the response to a PATCH or - POST request triggering a VNF LCM operation. It can also be retrieved - from the "vnfLcmOpOccId" attribute in the - VnfLcmOperationOccurrenceNotification. - in: path - required: true - type: string - post: - description: > - The POST method initiates cancelling an ongoing VNF lifecycle operation - while it is being executed or rolled back, i.e. the related "VNF LCM - operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. - responses: - '202': - description: > - Accepted - - The request was accepted for processing, but processing has not been - completed. The response shall have an empty payload body. - headers: - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF LCM - operation occurrence represented by the parent resource, and that - the task resource consequently does not exist. The "ProblemDetails" - structure may be provided, including in the "detail" attribute - information about the sourceof the problem, e.g. a wrong resource - URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '409': - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with - the state of the VNF LCM operation occurrence resource. Typically, - this is due to the fact that the operation occurrence is not in - STARTING, PROCESSING or ROLLING_BACK state. The response body shall - contain a ProblemDetails structure, in which the "detail" attribute - shall convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - /subscriptions: - post: - description: | - The POST method creates a new subscription. - parameters: - - name: LccnSubscriptionRequest - description: | - Details of the subscription to be created. - in: body - required: true - schema: - description: > - This type represents a subscription request related to - notifications about VNF lifecycle changes. - type: object - required: - - callbackUri - properties: - filter: - description: > - This type represents a subscription filter related to - notifications about VNF lifecycle changes. At a particular - nesting level in the filter structure, the following applies: - All attributes shall match in order for the filter to match - (logical "and" between different filter attributes). If an - attribute is an array, the attribute shall match if at least - one of the values in the array matches (logical "or" between - the values of one filter attribute). - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match - VNF instances. - type: object - properties: - vnfdIds: - description: > - If present, match VNF instances that were created - based on a VNFD identified by one of the vnfdId values - listed in this attribute. The attributes "vnfdIds" and - "vnfProductsFromProviders" are alternatives to - reference to VNF instances that are based on certain - VNFDs in a filter. They should not be used both in the - same filter instance, but one alternative should be - chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF - products from certain providers. The attributes - "vnfdIds" and "vnfProductsFromProviders" are - alternatives to reference to VNF instances that are - based on certain VNFDs in a filter. They should not be - used both in the same filter instance, but one - alternative should be chosen. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: | - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to - VNF products with certain product names, from - one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: | - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that - belong to VNF products with certain - versions and a certain product name, from - one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: | - A version. - type: string - vnfdVersions: - description: > - If present, match VNF instances that - belong to VNF products with certain VNFD - versions, a certain software version and - a certain product name, from one - particular provider. - type: array - items: - description: | - A version. - type: string - vnfInstanceIds: - description: > - If present, match VNF instances with an instance - identifier listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance - Name listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - type: string - notificationTypes: - description: > - Match particular notification types. Permitted values: * - VnfLcmOperationOccurrenceNotification * - VnfIdentifierCreationNotification * - VnfIdentifierDeletionNotification The permitted values of - the "notificationTypes" attribute are spelled exactly as - the names of the notification types to facilitate - automated code generation systems. - type: array - items: - type: string - enum: - - VnfLcmOperationOccurrenceNotification - - VnfIdentifierCreationNotification - - VnfIdentifierDeletionNotification - operationTypes: - description: > - Match particular VNF lifecycle operation types for the - notification of type - VnfLcmOperationOccurrenceNotification. May be present if - the "notificationTypes" attribute contains the value - "VnfLcmOperationOccurrenceNotification", and shall be - absent otherwise. - type: array - items: - description: > - Value | Description ------|------------ INSTANTIATE | - Represents the "Instantiate VNF" LCM operation. SCALE - | Represents the "Scale VNF" LCM operation. - SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM - operation. CHANGE_FLAVOUR | Represents the "Change VNF - Flavour" LCM operation. TERMINATE | Represents the - "Terminate VNF" LCM operation. HEAL | Represents the - "Heal VNF" LCM operation. OPERATE | Represents the - "Operate VNF" LCM operation. CHANGE_EXT_CONN | - Represents the "Change external VNF connectivity" LCM - operation. MODIFY_INFO | Represents the "Modify VNF - Information" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - operationStates: - description: > - Match particular LCM operation state values as reported in - notifications of type - VnfLcmOperationOccurrenceNotification. May be present if - the "notificationTypes" attribute contains the value - "VnfLcmOperationOccurrenceNotification", and shall be - absent otherwise. - type: array - items: - description: > - Value | Description ------|------------ STARTING | The - LCM operation is starting. PROCESSING | The LCM - operation is currently in execution. COMPLETED | he LCM - operation has been completed successfully. FAILED_TEMP | - The LCM operation has failed and execution has stopped, - but the execution of the operation is not considered to - be closed. FAILED | The LCM operation has failed and it - cannot be retried or rolled back, as it is determined - that such action won't succeed. ROLLING_BACK | The LCM - operation is currently being rolled back. ROLLED_BACK | - The LCM operation has been successfully rolled back, - i.e. The state of the VNF prior to the original - operation invocation has been restored as closely as - possible. - type: string - enum: - - STARTING - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK - callbackUri: - description: | - String formatted according to IETF RFC 3986. - type: string - authentication: - type: object - required: - - authType - properties: - authType: - description: > - Defines the types of Authentication / Authorization which - the API consumer is willing to accept when receiving a - notification. Permitted values: * BASIC: In every HTTP - request to the notification endpoint, use - HTTP Basic authentication with the client credentials. - * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the - notification endpoint, use an OAuth 2.0 Bearer token, obtained - using the client credentials grant type. - * TLS_CERT: Every HTTP request to the notification - endpoint is sent - over a mutually authenticated TLS session, i.e. not only the - server is authenticated, but also the client is authenticated - during the TLS tunnel setup. - type: array - items: - type: string - enum: - - BASIC - - OAUTH2_CLIENT_CREDENTIALS - - TLS_CERT - paramsBasic: - description: > - Parameters for authentication/authorization using BASIC. - Shall be present if authType is "BASIC" and the contained - information has not been provisioned out of band. Shall be - absent otherwise. - type: object - properties: - userName: - description: > - Username to be used in HTTP Basic authentication. - Shall be present if it has not been provisioned out of - band. - type: string - password: - description: > - Password to be used in HTTP Basic authentication. - Shall be present if it has not been provisioned out of - band. - type: string - paramsOauth2ClientCredentials: - description: > - Parameters for authentication/authorization using - OAUTH2_CLIENT_CREDENTIALS. Shall be present if authType is - "OAUTH2_CLIENT_CREDENTIALS" and the contained information - has not been provisioned out of band. Shall be absent - otherwise. - type: object - properties: - clientId: - description: > - Client identifier to be used in the access token - request of the OAuth 2.0 client credentials grant - type. Shall be present if it has not been provisioned - out of band. The clientId and clientPassword passed in - a subscription shall not be the same as the clientId - and clientPassword that are used to obtain - authorization for API requests. Client credentials may - differ between subscriptions. The value of - clientPassword should be generated by a random - process. - type: string - clientPassword: - description: > - Client password to be used in the access token request - of the OAuth 2.0 client credentials grant type. Shall - be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a - subscription shall not be the same as the clientId and - clientPassword that are used to obtain authorization - for API requests. Client credentials may differ - between subscriptions. The value of clientPassword - should be generated by a random process. - type: string - tokenEndpoint: - description: | - String formatted according to IETF RFC 3986. - type: string - responses: - '201': - description: > - Created - - The subscription was created successfully. The response body shall - contain a representation of the created subscription resource. The - HTTP response shall include a "Location" HTTP header that points to - the created subscription resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created VNF instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a subscription related to notifications about - VNF lifecycle changes. - type: object - required: - - id - - callbackUri - - _links - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - filter: - description: > - This type represents a subscription filter related to - notifications about VNF lifecycle changes. At a particular - nesting level in the filter structure, the following applies: - All attributes shall match in order for the filter to match - (logical "and" between different filter attributes). If an - attribute is an array, the attribute shall match if at least - one of the values in the array matches (logical "or" between - the values of one filter attribute). - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match - VNF instances. - type: object - properties: - vnfdIds: - description: > - If present, match VNF instances that were created - based on a VNFD identified by one of the vnfdId values - listed in this attribute. The attributes "vnfdIds" and - "vnfProductsFromProviders" are alternatives to - reference to VNF instances that are based on certain - VNFDs in a filter. They should not be used both in the - same filter instance, but one alternative should be - chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF - products from certain providers. The attributes - "vnfdIds" and "vnfProductsFromProviders" are - alternatives to reference to VNF instances that are - based on certain VNFDs in a filter. They should not be - used both in the same filter instance, but one - alternative should be chosen. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: | - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to - VNF products with certain product names, from - one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: | - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that - belong to VNF products with certain - versions and a certain product name, from - one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: | - A version. - type: string - vnfdVersions: - description: > - If present, match VNF instances that - belong to VNF products with certain VNFD - versions, a certain software version and - a certain product name, from one - particular provider. - type: array - items: - description: | - A version. - type: string - vnfInstanceIds: - description: > - If present, match VNF instances with an instance - identifier listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance - Name listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - type: string - notificationTypes: - description: > - Match particular notification types. Permitted values: * - VnfLcmOperationOccurrenceNotification * - VnfIdentifierCreationNotification * - VnfIdentifierDeletionNotification The permitted values of - the "notificationTypes" attribute are spelled exactly as - the names of the notification types to facilitate - automated code generation systems. - type: array - items: - type: string - enum: - - VnfLcmOperationOccurrenceNotification - - VnfIdentifierCreationNotification - - VnfIdentifierDeletionNotification - operationTypes: - description: > - Match particular VNF lifecycle operation types for the - notification of type - VnfLcmOperationOccurrenceNotification. May be present if - the "notificationTypes" attribute contains the value - "VnfLcmOperationOccurrenceNotification", and shall be - absent otherwise. - type: array - items: - description: > - Value | Description ------|------------ INSTANTIATE | - Represents the "Instantiate VNF" LCM operation. SCALE - | Represents the "Scale VNF" LCM operation. - SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM - operation. CHANGE_FLAVOUR | Represents the "Change VNF - Flavour" LCM operation. TERMINATE | Represents the - "Terminate VNF" LCM operation. HEAL | Represents the - "Heal VNF" LCM operation. OPERATE | Represents the - "Operate VNF" LCM operation. CHANGE_EXT_CONN | - Represents the "Change external VNF connectivity" LCM - operation. MODIFY_INFO | Represents the "Modify VNF - Information" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - operationStates: - description: > - Match particular LCM operation state values as reported in - notifications of type - VnfLcmOperationOccurrenceNotification. May be present if - the "notificationTypes" attribute contains the value - "VnfLcmOperationOccurrenceNotification", and shall be - absent otherwise. - type: array - items: - description: > - Value | Description ------|------------ STARTING | The - LCM operation is starting. PROCESSING | The LCM - operation is currently in execution. COMPLETED | he LCM - operation has been completed successfully. FAILED_TEMP | - The LCM operation has failed and execution has stopped, - but the execution of the operation is not considered to - be closed. FAILED | The LCM operation has failed and it - cannot be retried or rolled back, as it is determined - that such action won't succeed. ROLLING_BACK | The LCM - operation is currently being rolled back. ROLLED_BACK | - The LCM operation has been successfully rolled back, - i.e. The state of the VNF prior to the original - operation invocation has been restored as closely as - possible. - type: string - enum: - - STARTING - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK - callbackUri: - description: | - String formatted according to IETF RFC 3986. - type: string - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF LCM - operation occurrence represented by the parent resource, and that - the task resource consequently does not exist. The "ProblemDetails" - structure may be provided, including in the "detail" attribute - information about the sourceof the problem, e.g. a wrong resource - URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - get: - description: > - The GET method queries the list of active subscriptions of the - functional block that invokes the method. It can be used e.g. for - resynchronization after error situations. - responses: - '200': - description: > - OK - - The list of subscriptions was queried successfully. The response - body shall contain the representations of all active subscriptions - of the functional block that invokes the method. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a subscription related to notifications about - VNF lifecycle changes. - type: object - required: - - id - - callbackUri - - _links - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - filter: - description: > - This type represents a subscription filter related to - notifications about VNF lifecycle changes. At a particular - nesting level in the filter structure, the following applies: - All attributes shall match in order for the filter to match - (logical "and" between different filter attributes). If an - attribute is an array, the attribute shall match if at least - one of the values in the array matches (logical "or" between - the values of one filter attribute). - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match - VNF instances. - type: object - properties: - vnfdIds: - description: > - If present, match VNF instances that were created - based on a VNFD identified by one of the vnfdId values - listed in this attribute. The attributes "vnfdIds" and - "vnfProductsFromProviders" are alternatives to - reference to VNF instances that are based on certain - VNFDs in a filter. They should not be used both in the - same filter instance, but one alternative should be - chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF - products from certain providers. The attributes - "vnfdIds" and "vnfProductsFromProviders" are - alternatives to reference to VNF instances that are - based on certain VNFDs in a filter. They should not be - used both in the same filter instance, but one - alternative should be chosen. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: | - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to - VNF products with certain product names, from - one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: | - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that - belong to VNF products with certain - versions and a certain product name, from - one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: | - A version. - type: string - vnfdVersions: - description: > - If present, match VNF instances that - belong to VNF products with certain VNFD - versions, a certain software version and - a certain product name, from one - particular provider. - type: array - items: - description: | - A version. - type: string - vnfInstanceIds: - description: > - If present, match VNF instances with an instance - identifier listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance - Name listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - type: string - notificationTypes: - description: > - Match particular notification types. Permitted values: * - VnfLcmOperationOccurrenceNotification * - VnfIdentifierCreationNotification * - VnfIdentifierDeletionNotification The permitted values of - the "notificationTypes" attribute are spelled exactly as - the names of the notification types to facilitate - automated code generation systems. - type: array - items: - type: string - enum: - - VnfLcmOperationOccurrenceNotification - - VnfIdentifierCreationNotification - - VnfIdentifierDeletionNotification - operationTypes: - description: > - Match particular VNF lifecycle operation types for the - notification of type - VnfLcmOperationOccurrenceNotification. May be present if - the "notificationTypes" attribute contains the value - "VnfLcmOperationOccurrenceNotification", and shall be - absent otherwise. - type: array - items: - description: > - Value | Description ------|------------ INSTANTIATE | - Represents the "Instantiate VNF" LCM operation. SCALE - | Represents the "Scale VNF" LCM operation. - SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM - operation. CHANGE_FLAVOUR | Represents the "Change VNF - Flavour" LCM operation. TERMINATE | Represents the - "Terminate VNF" LCM operation. HEAL | Represents the - "Heal VNF" LCM operation. OPERATE | Represents the - "Operate VNF" LCM operation. CHANGE_EXT_CONN | - Represents the "Change external VNF connectivity" LCM - operation. MODIFY_INFO | Represents the "Modify VNF - Information" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - operationStates: - description: > - Match particular LCM operation state values as reported in - notifications of type - VnfLcmOperationOccurrenceNotification. May be present if - the "notificationTypes" attribute contains the value - "VnfLcmOperationOccurrenceNotification", and shall be - absent otherwise. - type: array - items: - description: > - Value | Description ------|------------ STARTING | The - LCM operation is starting. PROCESSING | The LCM - operation is currently in execution. COMPLETED | he LCM - operation has been completed successfully. FAILED_TEMP | - The LCM operation has failed and execution has stopped, - but the execution of the operation is not considered to - be closed. FAILED | The LCM operation has failed and it - cannot be retried or rolled back, as it is determined - that such action won't succeed. ROLLING_BACK | The LCM - operation is currently being rolled back. ROLLED_BACK | - The LCM operation has been successfully rolled back, - i.e. The state of the VNF prior to the original - operation invocation has been restored as closely as - possible. - type: string - enum: - - STARTING - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK - callbackUri: - description: | - String formatted according to IETF RFC 3986. - type: string - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - Invalid attribute-based filtering parameters. The response body - shall 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF LCM - operation occurrence represented by the parent resource, and that - the task resource consequently does not exist. The "ProblemDetails" - structure may be provided, including in the "detail" attribute - information about the sourceof the problem, e.g. a wrong resource - URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '/subscriptions/{subscriptionId}': - parameters: - - name: subscriptionId - description: > - Identifier of this subscription. This identifier can be retrieved from - the resource referenced by the "Location" HTTP header in the response - to a POST request creating a new subscription resource. It can also be - retrieved from the "id" attribute in the payload body of that - response. - in: path - type: string - required: true - get: - description: > - The GET method retrieves information about a subscription by reading an - individual subscription resource. - responses: - '200': - description: > - OK - - The operation has completed successfully. The response body shall - contain a representation of the subscription resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - This type represents a subscription related to notifications about - VNF lifecycle changes. - type: object - required: - - id - - callbackUri - - _links - properties: - id: - description: | - An identifier with the intention of being globally unique. - type: string - filter: - description: > - This type represents a subscription filter related to - notifications about VNF lifecycle changes. At a particular - nesting level in the filter structure, the following applies: - All attributes shall match in order for the filter to match - (logical "and" between different filter attributes). If an - attribute is an array, the attribute shall match if at least - one of the values in the array matches (logical "or" between - the values of one filter attribute). - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match - VNF instances. - type: object - properties: - vnfdIds: - description: > - If present, match VNF instances that were created - based on a VNFD identified by one of the vnfdId values - listed in this attribute. The attributes "vnfdIds" and - "vnfProductsFromProviders" are alternatives to - reference to VNF instances that are based on certain - VNFDs in a filter. They should not be used both in the - same filter instance, but one alternative should be - chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF - products from certain providers. The attributes - "vnfdIds" and "vnfProductsFromProviders" are - alternatives to reference to VNF instances that are - based on certain VNFDs in a filter. They should not be - used both in the same filter instance, but one - alternative should be chosen. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: | - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to - VNF products with certain product names, from - one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: | - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that - belong to VNF products with certain - versions and a certain product name, from - one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: | - A version. - type: string - vnfdVersions: - description: > - If present, match VNF instances that - belong to VNF products with certain VNFD - versions, a certain software version and - a certain product name, from one - particular provider. - type: array - items: - description: | - A version. - type: string - vnfInstanceIds: - description: > - If present, match VNF instances with an instance - identifier listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - description: > - An identifier with the intention of being globally - unique. - type: string - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance - Name listed in this attribute. The attributes - "vnfInstanceIds" and "vnfInstanceNames" are - alternatives to reference to particular VNF Instances - in a filter. They should not be used both in the same - filter instance, but one alternative should be chosen. - type: array - items: - type: string - notificationTypes: - description: > - Match particular notification types. Permitted values: * - VnfLcmOperationOccurrenceNotification * - VnfIdentifierCreationNotification * - VnfIdentifierDeletionNotification The permitted values of - the "notificationTypes" attribute are spelled exactly as - the names of the notification types to facilitate - automated code generation systems. - type: array - items: - type: string - enum: - - VnfLcmOperationOccurrenceNotification - - VnfIdentifierCreationNotification - - VnfIdentifierDeletionNotification - operationTypes: - description: > - Match particular VNF lifecycle operation types for the - notification of type - VnfLcmOperationOccurrenceNotification. May be present if - the "notificationTypes" attribute contains the value - "VnfLcmOperationOccurrenceNotification", and shall be - absent otherwise. - type: array - items: - description: > - Value | Description ------|------------ INSTANTIATE | - Represents the "Instantiate VNF" LCM operation. SCALE - | Represents the "Scale VNF" LCM operation. - SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM - operation. CHANGE_FLAVOUR | Represents the "Change VNF - Flavour" LCM operation. TERMINATE | Represents the - "Terminate VNF" LCM operation. HEAL | Represents the - "Heal VNF" LCM operation. OPERATE | Represents the - "Operate VNF" LCM operation. CHANGE_EXT_CONN | - Represents the "Change external VNF connectivity" LCM - operation. MODIFY_INFO | Represents the "Modify VNF - Information" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - operationStates: - description: > - Match particular LCM operation state values as reported in - notifications of type - VnfLcmOperationOccurrenceNotification. May be present if - the "notificationTypes" attribute contains the value - "VnfLcmOperationOccurrenceNotification", and shall be - absent otherwise. - type: array - items: - description: > - Value | Description ------|------------ STARTING | The - LCM operation is starting. PROCESSING | The LCM - operation is currently in execution. COMPLETED | he LCM - operation has been completed successfully. FAILED_TEMP | - The LCM operation has failed and execution has stopped, - but the execution of the operation is not considered to - be closed. FAILED | The LCM operation has failed and it - cannot be retried or rolled back, as it is determined - that such action won't succeed. ROLLING_BACK | The LCM - operation is currently being rolled back. ROLLED_BACK | - The LCM operation has been successfully rolled back, - i.e. The state of the VNF prior to the original - operation invocation has been restored as closely as - possible. - type: string - enum: - - STARTING - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK - callbackUri: - description: | - String formatted according to IETF RFC 3986. - type: string - _links: - description: | - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: | - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: | - URI of the referenced resource. - type: string - format: url - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF LCM - operation occurrence represented by the parent resource, and that - the task resource consequently does not exist. The "ProblemDetails" - structure may be provided, including in the "detail" attribute - information about the sourceof the problem, e.g. a wrong resource - URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - delete: - description: | - The DELETE method terminates an individual subscription. - responses: - '204': - description: > - No Content - - The subscription resource was deleted successfully. The response - body shall be empty. - headers: - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - '400': - description: > - Bad Request - - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), 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 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. - - --- - - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '401': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '403': - description: > - 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '404': - description: > - 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. Specifically in case of this task resource, the - reason can also be that the task is not supported for the VNF LCM - operation occurrence represented by the parent resource, and that - the task resource consequently does not exist. The "ProblemDetails" - structure may be provided, including in the "detail" attribute - information about the sourceof the problem, e.g. a wrong resource - URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '405': - description: > - 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. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '406': - description: > - 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 in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '500': - description: > - 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 withthis 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - '503': - description: > - 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 [13] 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. - type: string - maximum: 1 - minimum: 1 - schema: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present - document, to ensure that the response contains additional textual - information about an error. IETF RFC 7807 [19] foresees - extensibility of the "ProblemDetails" type. It is possible that - particular APIs in the present document, or particular - implementations, define extensions to define additional attributes - that provide more information about the error. The description - column only provides some explanation of the meaning to Facilitate - understanding of the design. For a full description, see IETF RFC - 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies - the problem type. It is encouraged that the URI provides - human-readable documentation for the problem (e.g. using HTML) - when dereferenced. When this member is not present, its value - is assumed to be "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should - not change from occurrence to occurrence of the problem, - except for purposes of localization. If type is given and - other than "about:blank", this attribute shall also be - provided. A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of - the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. The - HTTP status code ([RFC7231], Section 6) generated by the - origin server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of - the problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - diff --git a/SOL002/VNFLifecycleManagement-API/ScaleVNFTask.robot b/SOL002/VNFLifecycleManagement-API/ScaleVNFTask.robot index b4d9451ab1f8a7ddb003ebf179bb3ced62b1bf67..b5fac239a12513a55f0eb2be063dea9d414ee0dc 100644 --- a/SOL002/VNFLifecycleManagement-API/ScaleVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/ScaleVNFTask.robot @@ -1,8 +1,8 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -Library OperatingSystem +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ Suite Setup Check resource existence @@ -13,7 +13,7 @@ POST Scale a vnfInstance ... Test title: POST Scale a vnfInstance ... Test objective: The objective is to scale a VNF instance ... Pre-conditions: none - ... Reference: clause 5.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -26,7 +26,7 @@ POST Scale a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Scale a vnfInstance Conflict (Not-Instantiated) ... Test objective: The objective is to verify that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: clause 5.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -40,7 +40,7 @@ POST Scale a vnfInstance Not Found ... Test title: POST Scale a vnfInstance Not Found ... Test objective: The objective is to verify that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. ... Pre-conditions: - ... Reference: clause 5.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.5.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -53,7 +53,7 @@ GET Scale VNFInstance - Method not implemented ... Test title: GET Scale VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.5.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -65,7 +65,7 @@ PUT Scale VNFInstance - Method not implemented ... Test title: PUT Scale VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.5.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.5.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -77,7 +77,7 @@ PATCH Scale VNFInstance - Method not implemented ... Test title: PATCH Scale VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.5.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.5.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -89,7 +89,7 @@ DELETE Scale VNFInstance - Method not implemented ... Test title: DELETE Scale VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.5.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.5.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: diff --git a/SOL002/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot b/SOL002/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot index 4bfaec14756d0560fea167d36fcac789490e6d7a..2964f98273bb414d094c727a38a27efdfa67d358 100644 --- a/SOL002/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot +++ b/SOL002/VNFLifecycleManagement-API/ScaleVNFToLevelTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -12,7 +12,7 @@ POST Scale a vnfInstance to level ... Test title: POST Scale a vnfInstance to level ... Test objective: The objective is to scale a VNF instance to a target level. ... Pre-conditions: none - ... Reference: clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -26,7 +26,7 @@ POST Scale a vnfInstance to level Conflict (Not-Instantiated) ... Test title: POST Scale a vnfInstance to level Conflict (Not-Instantiated) ... Test objective: The objective is to verify that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -38,14 +38,14 @@ POST Scale a vnfInstance to level Conflict (Not-Instantiated) POST Scale a vnfInstance Not Found [Documentation] Test ID: 6.3.5.5.3 ... Test title: POST Scale a vnfInstance Not Found - ... Test objective: The objective is to verify that the operation cannot be executed , because the VNF instance resource cannot be found. + ... Test objective: The objective is to verify that the VNF Scale operation fails when the VNF instance resource is not present ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: POST Scale vnfInstance to level - Check HTTP Response Status Code Is 409 + Check HTTP Response Status Code Is 404 Check HTTP Response Body Json Schema Is ProblemDetails @@ -54,7 +54,7 @@ GET Scale to level VNFInstance - Method not implemented ... Test title: GET Scale to level VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -66,7 +66,7 @@ PUT Scale to level VNFInstance - Method not implemented ... Test title: PUT Scale to level VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -78,7 +78,7 @@ PATCH Scale to level VNFInstance - Method not implemented ... Test title: PATCH Scale to level VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -90,7 +90,7 @@ DELETE Scale to level VNFInstance - Method not implemented ... Test title: DELETE Scale to level VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -126,4 +126,4 @@ Launch another LCM operation Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} - Integer response status 202 \ No newline at end of file + Integer response status 202 diff --git a/SOL002/VNFLifecycleManagement-API/Subscriptions.robot b/SOL002/VNFLifecycleManagement-API/Subscriptions.robot index d36fd9da2d6b909a20a40084da751b478614fc2d..14c92a2ce8fe7893604ee22d590f28b1cefc16b3 100644 --- a/SOL002/VNFLifecycleManagement-API/Subscriptions.robot +++ b/SOL002/VNFLifecycleManagement-API/Subscriptions.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -12,24 +12,23 @@ POST Create a new subscription ... Test title: POST Create a new subscription ... Test objective: The POST method creates a new subscription ... Pre-conditions: none - ... Reference: clause 5.4.18.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: in response header Location shall not be null - ... POST Cancel operation task Post Create subscription Check HTTP Response Status Code Is 201 Check HTTP Response Body Json Schema Is Subscription + POST Create a new Subscription - DUPLICATION [Documentation] Test ID: 6.3.5.17.2 ... Test title: POST Create a new subscription - DUPLICATION ... Test objective: The POST method creates a new subscription even if an existing subscription to same content exist ... Pre-conditions: none - ... Reference: clause 5.4.18.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE - ... Applicability: none + ... Applicability: SUT should support duplication of subscription creation ... Post-Conditions: in response header Location shall not be null - ... POST Cancel operation task Post Create subscription - DUPLICATION Check HTTP Response Status Code Is 201 Check HTTP Response Body Json Schema Is Subscription @@ -39,11 +38,10 @@ POST Create a new Subscription - NO-DUPLICATION ... Test title: POST Create a new subscription - NO-DUPLICATION ... Test objective: The POST method creates a new subscription even if an existing subscription to same content exist ... Pre-conditions: none - ... Reference: clause 5.4.18.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE - ... Applicability: none + ... Applicability: SUT should not support duplication of subscription creation ... Post-Conditions: in response header Location shall not be null - ... POST Cancel operation task Post Create subscription - NO-DUPLICATION Check HTTP Response Status Code Is 303 Check Operation Occurrence Id @@ -53,7 +51,7 @@ GET Subscriptions ... Test title: GET Subscriptions ... Test objective: The objective is Get the list of active subscriptions ... Pre-conditions: none - ... Reference: clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -64,9 +62,9 @@ GET Subscriptions GET Subscription - Filter [Documentation] Test ID: 6.3.5.17.5 ... Test title: GET Subscriptions - Filter - ... Test objective: The objective is Get the list of active subscriptions using a filter + ... Test objective: The objective is Get the list of active subscriptions using a "filter" ... Pre-conditions: none - ... Reference: clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -79,7 +77,7 @@ GET subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test title: GET subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is Get the list of active subscriptions using a filter ... Pre-conditions: none - ... Reference: clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -91,7 +89,7 @@ GET subscriptions - Bad Request Invalid attribute-based filtering parameters ... Test title: GET subscriptions with all_fields attribute selector ... Test objective: The objective is Get the list of active subscriptions ... Pre-conditions: none - ... Reference: clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -104,7 +102,7 @@ GET subscriptions with exclude_default attribute selector ... Test title: GET subscriptions with exclude_default attribute selector ... Test objective: The objective is Get the list of active subscriptions ... Pre-conditions: none - ... Reference: clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -117,7 +115,7 @@ GET subscriptions with fields attribute selector ... Test title: GET subscriptions with fields attribute selector ... Test objective: The objective is Get the list of active subscriptions ... Pre-conditions: none - ... Reference: clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -130,7 +128,7 @@ GET subscriptions with exclude_fields attribute selector ... Test title: GET subscriptions with exclude_fields attribute selector ... Test objective: The objective is Get the list of active subscriptions ... Pre-conditions: none - ... Reference: clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -143,7 +141,7 @@ PUT subscriptions - Method not implemented ... Test title: PUT subscriptions - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.18.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -155,7 +153,7 @@ PATCH subscriptions - Method not implemented ... Test title: PATCH subscriptions - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.18.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -167,10 +165,11 @@ DELETE subscriptions - Method not implemented ... Test title: DELETE subscriptions - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.18.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.18.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none - ... Post-Conditions: none + ... Post-Conditions: check that resources are not deleted DELETE subscriptions Check HTTP Response Status Code Is 405 + Check Subscription resource exist \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/TerminateVNFTask.robot b/SOL002/VNFLifecycleManagement-API/TerminateVNFTask.robot index 44898b35533a38ff71b218a46da1fcb22d9e7935..96c9eb0e5d276408fbae612fba9f23f335faf48c 100644 --- a/SOL002/VNFLifecycleManagement-API/TerminateVNFTask.robot +++ b/SOL002/VNFLifecycleManagement-API/TerminateVNFTask.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -13,7 +13,7 @@ POST Terminate a vnfInstance ... Test title: POST Terminate a vnfInstance ... Test objective: The objective is to test that POST method terminate a VNF instance ... Pre-conditions: none - ... Reference: clause 5.4.8.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -26,7 +26,7 @@ POST Terminate a vnfInstance Conflict (Not-Instantiated) ... Test title: POST Terminate a vnfInstance Conflict (Not-Instantiated) ... Test objective: The objective is to test that the operation cannot be executed currently, due to a conflict with the state of the VNF instance resource. ... Pre-conditions: VNF instance resource is in NOT-INSTANTIATED state - ... Reference: clause 5.4.8.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.8.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: @@ -40,7 +40,7 @@ GET Terminate VNFInstance - Method not implemented ... Test title: GET Terminate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.8.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.8.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -52,7 +52,7 @@ PUT Terminate VNFInstance - Method not implemented ... Test title: PUT Terminate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.8.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.8.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ PATCH Terminate VNFInstance - Method not implemented ... Test title: PATCH Terminate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.8.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.8.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -76,7 +76,7 @@ DELETE Terminate VNFInstance - Method not implemented ... Test title: DELETE Terminate VNFInstance - Method not implemented ... Test objective: The objective is to verify that the method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.8.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.8.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none diff --git a/SOL002/VNFLifecycleManagement-API/VNFInstances.robot b/SOL002/VNFLifecycleManagement-API/VNFInstances.robot index 03bb02c6b17d50664d088458e598fd435520e120..4307c4fee3ecac39df3bcb17c522c2c507aab1d4 100644 --- a/SOL002/VNFLifecycleManagement-API/VNFInstances.robot +++ b/SOL002/VNFLifecycleManagement-API/VNFInstances.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library JSONLibrary Library JSONSchemaLibrary schemas/ @@ -12,7 +12,7 @@ POST Create a new vnfInstance ... Test title: POST Create a new vnfInstance ... Test objective: The objective is to create a new VNF instance resource ... Pre-conditions: - ... Reference: clause 5.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance created @@ -25,7 +25,7 @@ GET information about multiple VNF instances ... Test title: GET information about multiple VNF instances ... Test objective: The objective is to get information about multiples VNF instances ... Pre-conditions: - ... Reference: clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -39,7 +39,7 @@ GET information about multiple VNF instances Bad Request Invalid attribute-based ... Test title: GET information about multiple VNF instances Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to get information about multiples VNF instances with Invalid attribute-based filtering parameters ... Pre-conditions: - ... Reference: clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -52,7 +52,7 @@ GET information about multiple VNF instances Bad Request Invalid attribute selec ... Test title: GET information about multiple VNF instances Bad Request Invalid attribute selector ... Test objective: The objective is to get information about multiples VNF instances with Invalid attribute-based filtering parameters ... Pre-conditions: - ... Reference: clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -65,7 +65,7 @@ GET information about multiple VNF instances with "all_fields" attribute selecto ... Test title: GET information about multiple VNF instances with "all_fields" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: - ... Reference: clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -78,7 +78,7 @@ GET information about multiple VNF instances with "exclude_default" attribute se ... Test title: GET information about multiple VNF instances with "exclude_default" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: - ... Reference: clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -91,7 +91,7 @@ GET information about multiple VNF instances with "fields" attribute selector ... Test title: GET information about multiple VNF instances with "fields" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: - ... Reference: clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -104,7 +104,7 @@ GET information about multiple VNF instances with "exclude_fields" attribute sel ... Test title: GET information about multiple VNF instances with "exclude_fields" attribute selector ... Test objective: The objective is to query information about multiple VNF instances ... Pre-conditions: - ... Reference: clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -117,7 +117,7 @@ PUT VNFInstances - Method not implemented ... Test title: PUT VNFInstances - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -129,7 +129,7 @@ PATCH VNFInstances - Method not implemented ... Test title: PATCH VNFInstances - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: @@ -141,7 +141,7 @@ DELETE VNFInstances - Method not implemented ... Test title: DELETE VNFInstances - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: - ... Reference: clause 5.4.2.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.2.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: ... Post-Conditions: VNF instance not deleted diff --git a/SOL002/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot b/SOL002/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot deleted file mode 100644 index 7cfa316baaa39acd71d993c884ce01755fe2e21c..0000000000000000000000000000000000000000 --- a/SOL002/VNFLifecycleManagement-API/VnfLcmMntOperationKeywords.robot +++ /dev/null @@ -1,1065 +0,0 @@ -*** Settings *** -#Resource environment/configuration.txt -Resource environment/variables.txt -#Resource environment/scaleVariables.txt -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} -Library OperatingSystem -Library BuiltIn -Library JSONLibrary -Library Collections -Library JSONSchemaLibrary schemas/ - -*** Keywords *** - -Get Vnf Instance - [Arguments] ${vnfInstanceId} - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - ${body}= Output response body - [Return] ${body} - -Check HTTP Response Status Code Is - [Arguments] ${expected_status} - Should Be Equal ${response.status_code} ${expected_status} - Log Status code validated - -Check Operation Occurrence Id - ${vnfLcmOpOccId}= Get Value From Json ${response.headers} $..Location - Should Not Be Empty ${vnfLcmOpOccId} - -Check HTTP Response Body Json Schema Is - [Arguments] ${input} - ${schema} = Catenate ${input} .schema.json - Validate Json ${schema} ${response[0]['body']} - Log Json Schema Validation OK - -Check resource Instantiated - Check VNF Instance ${vnfInstanceId} - Check HTTP Response Status Code Is 200 - Check VNF Status ${response.body.instantiationState} INSTANTIATED - -Check resource not Instantiated - Check VNF Instance ${vnfInstanceId} - Check HTTP Response Status Code Is 200 - Check VNF Status ${response.body.instantiationState} NOT_INSTANTIATED - -Check VNF Instance - [Arguments] ${vnfId} - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${response}= Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfId} - -Check VNF Status - [Arguments] ${current} ${expected} - Should Be Equal As Strings ${current} ${expected} - Log VNF Status in the correct status - -Check resource has a temporary failure - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} - String response body instantiationState FAILED_TEMP - -Get Vnf Scale Info - [Arguments] ${vnfInstanceId} - ${vnfInstance}= Get Vnf Instance ${vnfInstanceId} - ${scaleInfo}= Get Value From Json ${vnfInstance} $..scaleStatus - [Return] ${scaleInfo} - -Get Vnf Flavour Info - [Arguments] ${vnfInstanceId} - ${vnfInstance}= Get Vnf Instance ${vnfInstanceId} - ${flavourInfo}= Get Value From Json ${vnfInstance} $..flavourId - [Return] ${flavourInfo} - -Get Vnf Operational State Info - [Arguments] ${vnfInstanceId} - ${vnfInstance}= Get Vnf Instance ${vnfInstanceId} - ${stateInfo}= Get Value From Json ${vnfInstance} $..vnfState - [Return] ${stateInfo} - -Get Vnf Ext Link Id - [Arguments] ${vnfInstanceId} - ${vnfInstance}= Get Vnf Instance ${vnfInstanceId} - [Return] ${vnfInstance.instantiatedVnfInfo.extVirtualLinkInfo.id} - -Check HTTP Response Header Contains - [Arguments] ${CONTENT_TYPE} - Should Contain ${response.headers} ${CONTENT_TYPE} - Log Header is present - -Send VNF Scale Out Request - Log Trying to scale a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfOutRequest.json - ${json}= evaluate json.loads('''${body}''') json - ${aspectId}= Set Variable ${json.aspectId} - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} - -Send VNF Scale To Level Request - [Documentation] Instantiate VNF The POST method instantiates a VNF instance. - Log Trying to Instantiate a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfToLevelRequest.json - ${json}= evaluate json.loads('''${body}''') json - ${aspectId}= Set Variable ${json.aspectId} - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} - -Send VNF Instance Resource Create Request - Log Create VNF instance by POST to ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/createVnfRequest.json - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body} - -Send VNF Instance Resource Delete Request - log Delete an individual VNF instance - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${response}= Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - -Send Change VNF Flavour Request - Log Trying to change the deployment flavour of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/changeVnfFlavourRequest.json - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} - -Send Change VNF Operational State Request - Log Trying to change the operational state of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/operateVnfRequest.json - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} - -Send Heal VNF Request - Log Trying to heal a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/healVnfRequest.json - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} - -Send Change Ext Connectivity Request - Log Trying to change the external connectivity of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/changeExtVnfConnectivityRequest.json - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} - -Send Terminate VNF Request - Log Trying to terminate a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/terminateVnfRequest.json - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} - -Send Info Modification Request - Log Trying to update information of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/patchBodyRequest.json - ${response}= Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} - -Send Retry Operation Request - Log Retry a VNF lifecycle operation if that operation has experienced a temporary failure - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry - -Send Roll back Operation Request - Log Rollback a VNF lifecycle operation if that operation has experienced a temporary failure - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback - -Send Fail Operation Request - Log Fail a VNF lifecycle operation if that operation has experienced a temporary failure - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail - -Send Cancel Operation Request - Log Cancel an ongoing VNF lifecycle operation - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${response}= Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${CancelMode} - -Create a new Grant - Synchronous mode - [Arguments] ${vnfInstanceId} ${vnfLcmOpOccId} ${operation} - Log Request a new Grant for a VNF LCM operation by POST to ${apiRoot}/${apiName}/${apiVersion}/grants - Pass Execution If ${SYNC_MODE} == 0 The Granting process is asynchronous mode. Skipping the test - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/grantRequest.json - ${json_body}= evaluate json.loads('''${body}''') json - Set To Dictionary ${json_body} vnfInstanceId=${vnfInstanceId} vnfLcmOpOccId=${vnfLcmOpOccId} operation=${operation} - ${body}= evaluate json.dumps(${json_body}) json - Post ${apiRoot}/${apiName}/${apiVersion}/grants ${body} - Integer response status 201 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - ${contentType}= Output response headers Content-Type - Should Contain ${contentType} ${CONTENT_TYPE} - ${result}= Output response body - Validate Json grant.schema.json ${result} - Log Validation OK - -Create a new Grant - Asynchronous mode - [Arguments] ${vnfInstanceId} ${vnfLcmOpOccId} ${operation} - Log Request a new Grant for a VNF LCM operation by POST to ${apiRoot}/${apiName}/${apiVersion}/grants - Pass Execution If ${SYNC_MODE} == 1 The Granting process is synchronous mode. Skipping the test - Set Headers {"Accept": "${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File jsons/grantRequest.json - ${json_body}= evaluate json.loads('''${body}''') json - Set To Dictionary ${json_body} vnfInstanceId=${vnfInstanceId} vnfLcmOpOccId=${vnfLcmOpOccId} operation=${operation} - ${body}= evaluate json.dumps(${json_body}) json - Post ${apiRoot}/${apiName}/${apiVersion}/grants ${body} - Output response - Integer response status 202 - Log Status code validated - ${headers}= Output response headers - Should Contain ${headers} Location - ${contentType}= Output response headers Content-Type - Should Contain ${contentType} ${CONTENT_TYPE} - Log Validation OK - -POST Cancel operation task - Log Cancel an ongoing VNF lifecycle operation - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Cancel a VNF lifecycle operation - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${CancelMode} - Log Validate Status code - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET Cancel operation task - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT Cancel operation task - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH Cancel operation task - Log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -DELETE Cancel operation task - Log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -POST Change External VNF Connectivity - Log Trying to change the external connectivity of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/changeExtVnfConnectivityRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET Change External VNF Connectivity - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT Change External VNF Connectivity - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH Change External VNF Connectivity - Log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -DELETE Change External VNF Connectivity - Log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -POST Change VNF deployment flavour - Log Trying to change the deployment flavour of a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/changeVnfFlavourRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -GET Change External VNF Flavour - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT Change External VNF Connectivity - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH Change External VNF Connectivity - Log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -DELETE Change External VNF Connectivity - Log Trying to perform a DELETE. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -POST Create a new vnfInstance - Log Create VNF instance by POST to /vnf_instances - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/createVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET multiple vnfInstances - Log Query VNF The GET method queries information about multiple VNF instances. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET multiple vnfInstances with bad attribute - Log Query VNF The GET method queries information about multiple VNF instances. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?attribute_not_exist=some_value - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET multiple vnfInstances with bad filter - Log Query VNF The GET method queries information about multiple VNF instances. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?attribute_not_exist=some_value - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT VNFInstances - Method not implemented - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - Log Validate Status code - Integer response status 405 - -PATCH VNFInstances - Method not implemented - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - Log Validate Status code - Integer response status 405 - -DELETE VNFInstances - Method not implemented - log Trying to perform a DELETE. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances - Log Validate Status code - Integer response status 405 - -POST vnfInstances - log Trying to perform a POST. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET individual vnfInstance - log Trying to get information about an individual VNF instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT individual vnfInstance - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH individual vnfInstance - log Trying to modify an individual VNF instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE_PATCH}"} - Set Headers {"If-Match": "${original_etag}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/patchBodyRequest.json - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -DELETE individual vnfInstance - log Trying to delete an individual VNF instance - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -POST instantiate individual vnfInstance - Log Trying to Instantiate a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/instantiateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET instantiate individual vnfInstance - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT instantiate individual vnfInstance - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH instantiate individual vnfInstance - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -DELETE instantiate individual vnfInstance - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -POST Scale vnfInstance - [Arguments] ${instanceId} - Log Trying to Instantiate a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${instanceId}/scale ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -GET Scale vnfInstance - Log Trying to get a scale a vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -PUT Scale vnfInstance - Log Trying to modify a scale vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfRequest.json - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -PATCH Scale vnfInstance - Log Trying to modify a scale vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfRequest.json - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -DELETE Scale vnfInstance - Log Trying to modify a scale vnf Instance - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfRequest.json - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -POST Scale vnfInstance to level - Log Trying to scale a vnf Instance to level - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/scaleVnfToLevelRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -GET Scale vnfInstance to level - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT Scale vnfInstance to level - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH Scale vnfInstance to level - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -DELETE Scale vnfInstance to level - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -POST Terminate VNF - Log Trying to terminate a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/terminateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET Terminate VNF - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT Terminate VNF - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH Terminate VNF - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -DELETE Terminate VNF - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -POST Terminate VNF - Log Trying to heal a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/healVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET Heal VNF - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT Heal VNF - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH Heal VNF - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -DELETE Heal VNF - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -POST Operate VNF - Log Trying to operate a VNF instance. - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/operateVnfRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -GET Heal VNF - log Trying to perform a GET. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PUT Heal VNF - log Trying to perform a PUT. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -PATCH Heal VNF - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -DELETE Heal VNF - log Trying to perform a PATCH. This method should not be implemented - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} - -Post VNF LCM OP occurrences - log Trying to perform a POST. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -GET VNF LCM OP occurrences - Log Query status information about multiple VNF lifecycle management operation occurrences. - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -GET VNF LCM OP occurrences invalid attribute - Log Query status information about multiple VNF lifecycle management operation occurrences. - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - GET ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs?attribute_not_exist=some_value - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -GET VNF LCM OP occurrences invalid filter - Log Query status information about multiple VNF lifecycle management operation occurrences. - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - GET ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs?fields=wrong_field - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -PUT VNF LCM OP occurrences - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -PATCH VNF LCM OP occurrences - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -DELETE VNF LCM OP occurrences - log Trying to perform a DELETE. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Post Individual VNF LCM OP occurrences - log Trying to perform a POST. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Get multiple VNF instances - Log Query status information about multiple VNF lifecycle management operation occurrences. - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Put multiple VNF instances - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Patch multiple VNF instances - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Delete multiple VNF instances - log Trying to perform a DELETE. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Post Retry operation - Log Retry a VNF lifecycle operation if that operation has experienced a temporary failure - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Get Retry operation - Log Trying to perform a GET. This method should not be implemented. - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Put Retry operation - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Patch Retry operation - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Delete Retry operation - log Trying to perform a DELETE. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Post Rollback operation - Log Rollback a VNF lifecycle operation if that operation has experienced a temporary failure - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Get Rollback operation - Log Trying to perform a GET. This method should not be implemented. - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Put Rollback operation - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Patch Rollback operation - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Delete Rollback operation - log Trying to perform a DELETE. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Post Fail operation - Log mark as Failed a VNF lifecycle operation if that operation has experienced a temporary failure - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Get Fail operation - Log Trying to perform a GET. This method should not be implemented. - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Put Fail operation - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Patch Fail operation - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Delete Fail operation - log Trying to perform a DELETE. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Post Create subscription - Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - ${body}= Get File jsons/lccnSubscriptionRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Post Create subscription - DUPLICATION - Log Trying to create a subscription with an already created content - Pass Execution If ${VNFM_DUPLICATION} == 0 VNFM is not permitting duplication. Skipping the test - Set Headers {"Accept": "${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File jsons/lccnSubscriptionRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Post Create subscription - NO-DUPLICATION - Log Trying to create a subscription with an already created content - Pass Execution If ${VNFM_DUPLICATION} == 1 VNFM permits duplication. Skipping the test - Set Headers {"Accept": "${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - ${body}= Get File jsons/lccnSubscriptionRequest.json - Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Get subscriptions - Log Get the list of active subscriptions - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Log Execute Query and validate response - Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Get subscriptions - filter - Log Get the list of active subscriptions using a filter - Set Headers {"Accept": "${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Get subscriptions - invalid filter - Log Get the list of active subscriptions using an invalid filter - Set Headers {"Accept": "${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} - GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter_invalid} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -PUT subscriptions - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -PATCH subscriptions - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -DELETE subscriptions - log Trying to perform a DELETE. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/subscriptions - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Post Create Individual subscription - log Trying to perform a POST. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Get Individual subscription - log Trying to get information about an individual subscription - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Put Individual subscription - log Trying to perform a PUT. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Patch Individual subscription - log Trying to perform a PATCH. This method should not be implemented - Set Headers {"Accept":"${ACCEPT}"} - Set Headers {"Content-Type": "${CONTENT_TYPE}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Patch ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Delete Individual subscription - log Try to delete an individual subscription - Set Headers {"Accept":"${ACCEPT}"} - Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} - Delete ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Put Notification subscription - log Trying to perform a PUT. This method should not be implemented - Put ${callback_endpoint} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Patch Notification subscription - log Trying to perform a PATCH. This method should not be implemented - Patch ${callback_endpoint} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -Delete Notification subscription - log Trying to perform a DELETE. This method should not be implemented - Delete ${callback_endpoint} - ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} -POST Operation occurrence - log The POST method delivers a notification from the server to the client. - ${json}= Get File schemas/NsLcmOperationOccurrenceNotification.schema.json - ${BODY}= evaluate json.loads('''${json}''') json - Log Creating mock request and response to handle NSLcmOperationOccurrenceNotification - &{req}= Create Mock Request Matcher POST ${callback_endpoint} body_type="JSON_SCHEMA" body=${BODY} - &{rsp}= Create Mock Response headers="Content-Type: application/json" status_code=204 - Create Mock Expectation ${req} ${rsp} - Sleep ${sleep_interval} - Log Verifying results - Verify Mock Expectation ${req} - Log Cleaning the endpoint - Clear Requests ${callback_endpoint} -POST Id creation - log The POST method delivers a notification from the server to the client. - ${json}= Get File schemas/vnfIdentifierCreationNotification.schema.json - ${BODY}= evaluate json.loads('''${json}''') json - Log Creating mock request and response to handle vnfLcmOperationOccurrenceNotification - &{req}= Create Mock Request Matcher POST ${callback_endpoint} body_type="JSON_SCHEMA" body=${BODY} - &{rsp}= Create Mock Response headers="Content-Type: application/json" status_code=204 - Create Mock Expectation ${req} ${rsp} - Sleep ${sleep_interval} - Log Verifying results - Verify Mock Expectation ${req} - Log Cleaning the endpoint - Clear Requests ${callback_endpoint} -POST Id deletion - log The POST method delivers a notification from the server to the client. - ${json}= Get File schemas/vnfIdentifierCreationNotification.schema.json - ${BODY}= evaluate json.loads('''${json}''') json - Log Creating mock request and response to handle vnfLcmOperationOccurrenceNotification - &{req}= Create Mock Request Matcher POST ${callback_endpoint} body_type="JSON_SCHEMA" body=${BODY} - &{rsp}= Create Mock Response headers="Content-Type: application/json" status_code=204 - Create Mock Expectation ${req} ${rsp} - Sleep ${sleep_interval} - Log Verifying results - Verify Mock Expectation ${req} - Log Cleaning the endpoint - Clear Requests ${callback_endpoint} -GET test endpoint - log The GET method allows the server to test the notification endpoint - &{req}= Create Mock Request Matcher GET ${callback_endpoint} - &{rsp}= Create Mock Response headers="Content-Type: application/json" status_code=204 - Create Mock Expectation ${req} ${rsp} - Sleep ${sleep_interval} - Verify Mock Expectation ${req} - Clear Requests ${callback_endpoint} \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/VnfLcmOperationKeywords.robot b/SOL002/VNFLifecycleManagement-API/VnfLcmOperationKeywords.robot index d0737e0c0d3ea006e14eaa9faa54edfecb3599c3..6daa361da77b6ba5a3bda2e5559571a071bf80c3 100644 --- a/SOL002/VNFLifecycleManagement-API/VnfLcmOperationKeywords.robot +++ b/SOL002/VNFLifecycleManagement-API/VnfLcmOperationKeywords.robot @@ -3,7 +3,7 @@ Resource environment/variables.txt #Resource environment/scaleVariables.txt Library MockServerLibrary -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library OperatingSystem Library BuiltIn Library JSONLibrary @@ -23,28 +23,28 @@ Get Vnf Instance Check HTTP Response Status Code Is [Arguments] ${expected_status} - Should Be Equal ${response.status_code} ${expected_status} + Should Be Equal As Strings ${response['status']} ${expected_status} Log Status code validated Check Operation Occurrence Id - ${vnfLcmOpOccId}= Get Value From Json ${response.headers} $..Location + ${vnfLcmOpOccId}= Get Value From Json ${response['headers']} $..Location Should Not Be Empty ${vnfLcmOpOccId} Check HTTP Response Body Json Schema Is [Arguments] ${input} ${schema} = Catenate ${input} .schema.json - Validate Json ${schema} ${response[0]['body']} + Validate Json ${schema} ${response['body']} Log Json Schema Validation OK Check resource Instantiated Check VNF Instance ${vnfInstanceId} Check HTTP Response Status Code Is 200 - Check VNF Status ${response.body.instantiationState} INSTANTIATED + Check VNF Status ${response['body']['instantiationState']} INSTANTIATED Check resource not Instantiated Check VNF Instance ${vnfInstanceId} Check HTTP Response Status Code Is 200 - Check VNF Status ${response.body.instantiationState} NOT_INSTANTIATED + Check VNF Status ${response['body']['instantiationState']} NOT_INSTANTIATED Check VNF Instance [Arguments] ${vnfId} @@ -70,7 +70,7 @@ Check operation resource state is FINALLY_FAILED Check HTTP Response Header Contains [Arguments] ${CONTENT_TYPE} - Should Contain ${response.headers} ${CONTENT_TYPE} + Should Contain ${response['headers']} ${CONTENT_TYPE} Log Header is present POST Create a new vnfInstance @@ -81,7 +81,7 @@ POST Create a new vnfInstance ${body}= Get File jsons/createVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET multiple vnfInstances Log Query VNF The GET method queries information about multiple VNF instances. @@ -90,7 +90,7 @@ GET multiple vnfInstances Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET multiple vnfInstances with bad attribute Log Query VNF The GET method queries information about multiple VNF instances. @@ -99,7 +99,7 @@ GET multiple vnfInstances with bad attribute Set Headers {"Authorization":"${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?attribute_not_exist=some_value ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET multiple vnfInstances with bad filter Log Query VNF The GET method queries information about multiple VNF instances. @@ -108,7 +108,7 @@ GET multiple vnfInstances with bad filter Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/vnf_instances?fields=wrong_field ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET multiple vnfInstances with all_fields attribute selector Log Query status information about multiple VNF instances, using fields Set Headers {"Accept": "${ACCEPT_JSON}"} @@ -144,21 +144,21 @@ PUT multiple vnfInstances Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH multiple vnfInstances Log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfLcmOpOccId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE multiple vnfInstances Log Trying to perform a DELETE. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfLcmOpOccId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST individual vnfInstance log Trying to perform a POST. This method should not be implemented @@ -167,7 +167,7 @@ POST individual vnfInstance Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET individual vnfInstance log Trying to get information about an individual VNF instance @@ -176,7 +176,7 @@ GET individual vnfInstance Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT individual vnfInstance log Trying to perform a PUT. This method should not be implemented @@ -185,7 +185,7 @@ PUT individual vnfInstance Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH individual vnfInstance log Trying to modify an individual VNF instance @@ -196,13 +196,13 @@ PATCH individual vnfInstance ${body}= Get File jsons/patchBodyRequest.json Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE individual vnfInstance log Trying to delete an individual VNF instance Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST instantiate individual vnfInstance Log Trying to Instantiate a vnf Instance @@ -212,35 +212,35 @@ POST instantiate individual vnfInstance ${body}= Get File jsons/instantiateVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET instantiate individual vnfInstance log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT instantiate individual vnfInstance log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH instantiate individual vnfInstance log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE instantiate individual vnfInstance log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/instantiate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Scale vnfInstance Log Trying to Instantiate a vnf Instance @@ -250,7 +250,7 @@ POST Scale vnfInstance ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Scale vnfInstance Log Trying to get a scale a vnf Instance Set Headers {"Accept":"${ACCEPT}"} @@ -259,7 +259,7 @@ GET Scale vnfInstance ${body}= Get File jsons/scaleVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Scale vnfInstance Log Trying to modify a scale vnf Instance Set Headers {"Accept":"${ACCEPT}"} @@ -268,7 +268,7 @@ PUT Scale vnfInstance ${body}= Get File jsons/scaleVnfRequest.json Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Scale vnfInstance Log Trying to modify a scale vnf Instance Set Headers {"Accept":"${ACCEPT}"} @@ -277,7 +277,7 @@ PATCH Scale vnfInstance ${body}= Get File jsons/scaleVnfRequest.json Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Scale vnfInstance Log Trying to modify a scale vnf Instance Set Headers {"Accept":"${ACCEPT}"} @@ -286,7 +286,7 @@ DELETE Scale vnfInstance ${body}= Get File jsons/scaleVnfRequest.json Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Scale vnfInstance to level Log Trying to scale a vnf Instance to level @@ -296,34 +296,34 @@ POST Scale vnfInstance to level ${body}= Get File jsons/scaleVnfToLevelRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Scale vnfInstance to level log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Scale vnfInstance to level log Trying to perform a PUT. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Scale vnfInstance to level log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Scale vnfInstance to level log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/scale_to_level ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Change VNF deployment flavour Log Trying to change the deployment flavour of a VNF instance. @@ -333,34 +333,34 @@ POST Change VNF deployment flavour ${body}= Get File jsons/changeVnfFlavourRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Change VNF deployment flavour log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Change VNF deployment flavour log Trying to perform a PUT. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Change VNF deployment flavour Log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Change VNF deployment flavour Log Trying to perform a DELETE. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_flavour ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Terminate VNF Log Trying to terminate a VNF instance. @@ -370,35 +370,35 @@ POST Terminate VNF ${body}= Get File jsons/terminateVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Terminate VNF log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Terminate VNF log Trying to perform a PUT. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Terminate VNF log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Terminate VNF log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/terminate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Heal VNF Log Trying to heal a VNF instance. @@ -408,35 +408,35 @@ POST Heal VNF ${body}= Get File jsons/healVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Heal VNF log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Heal VNF log Trying to perform a PUT. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Heal VNF log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Heal VNF log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/heal ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Change External VNF Connectivity Log Trying to change the external connectivity of a VNF instance. @@ -446,35 +446,35 @@ POST Change External VNF Connectivity ${body}= Get File jsons/changeExtVnfConnectivityRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Change External VNF Connectivity log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Change External VNF Connectivity log Trying to perform a PUT. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Change External VNF Connectivity Log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Change External VNF Connectivity Log Trying to perform a DELETE. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/change_ext_conn ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Operate VNF Log Trying to operate a VNF instance. @@ -484,35 +484,35 @@ POST Operate VNF ${body}= Get File jsons/operateVnfRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Operate VNF log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Operate VNF log Trying to perform a PUT. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Operate VNF log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Operate VNF log Trying to perform a PATCH. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfInstanceId}/operate ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post VNF LCM OP occurrences log Trying to perform a POST. This method should not be implemented @@ -520,7 +520,7 @@ Post VNF LCM OP occurrences Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET VNF LCM OP occurrences Log Query status information about multiple VNF lifecycle management operation occurrences. Set Headers {"Accept":"${ACCEPT}"} @@ -528,49 +528,49 @@ GET VNF LCM OP occurrences Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET VNF LCM OP occurrences invalid attribute Log Query status information about multiple VNF lifecycle management operation occurrences. Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs?attribute_not_exist=some_value ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET VNF LCM OP occurrences invalid filter Log Query status information about multiple VNF lifecycle management operation occurrences. Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs?fields=wrong_field ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT VNF LCM OP occurrences log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH VNF LCM OP occurrences log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE VNF LCM OP occurrences log Trying to perform a DELETE. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Individual VNF LCM OP occurrences log Trying to perform a POST. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Retry operation Log Retry a VNF lifecycle operation if that operation has experienced a temporary failure @@ -578,7 +578,7 @@ Post Retry operation Log Execute Query and validate response Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get Retry operation Log Trying to perform a GET. This method should not be implemented. Set Headers {"Accept":"${ACCEPT}"} @@ -586,35 +586,35 @@ Get Retry operation Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Put Retry operation log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Patch Retry operation log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Delete Retry operation log Trying to perform a DELETE. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/retry ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Rollback operation Log Rollback a VNF lifecycle operation if that operation has experienced a temporary failure Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Log Execute Query and validate response Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get Rollback operation Log Trying to perform a GET. This method should not be implemented. Set Headers {"Accept":"${ACCEPT}"} @@ -622,35 +622,35 @@ Get Rollback operation Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Put Rollback operation log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Patch Rollback operation log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Delete Rollback operation log Trying to perform a DELETE. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/rollback ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Fail operation Log mark as Failed a VNF lifecycle operation if that operation has experienced a temporary failure Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Log Execute Query and validate response Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get Fail operation Log Trying to perform a GET. This method should not be implemented. Set Headers {"Accept":"${ACCEPT}"} @@ -658,28 +658,28 @@ Get Fail operation Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Put Fail operation log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Patch Fail operation log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Delete Fail operation log Trying to perform a DELETE. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/fail ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Cancel operation task Log Cancel an ongoing VNF lifecycle operation @@ -688,35 +688,35 @@ POST Cancel operation task Post ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${CancelMode} Log Validate Status code ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} GET Cancel operation task log Trying to perform a GET. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PUT Cancel operation task log Trying to perform a PUT. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH Cancel operation task Log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE Cancel operation task Log Trying to perform a DELETE. This method should not be implemented Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}/cancel ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Create subscription Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions @@ -726,7 +726,7 @@ Post Create subscription ${body}= Get File jsons/lccnSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Create subscription - DUPLICATION Log Trying to create a subscription with an already created content Pass Execution If ${VNFM_DUPLICATION} == 0 VNFM is not permitting duplication. Skipping the test @@ -736,7 +736,7 @@ Post Create subscription - DUPLICATION ${body}= Get File jsons/lccnSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Create subscription - NO-DUPLICATION Log Trying to create a subscription with an already created content Pass Execution If ${VNFM_DUPLICATION} == 1 VNFM permits duplication. Skipping the test @@ -746,7 +746,7 @@ Post Create subscription - NO-DUPLICATION ${body}= Get File jsons/lccnSubscriptionRequest.json Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get subscriptions Log Get the list of active subscriptions Set Headers {"Accept":"${ACCEPT}"} @@ -755,7 +755,7 @@ Get subscriptions Log Execute Query and validate response Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get subscriptions - filter Log Get the list of active subscriptions using a filter Set Headers {"Accept": "${ACCEPT}"} @@ -763,14 +763,14 @@ Get subscriptions - filter Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get subscriptions - invalid filter Log Get the list of active subscriptions using an invalid filter Set Headers {"Accept": "${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter_invalid} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get subscriptions with all_fields attribute selector Log Get the list of active subscriptions, using fields Set Headers {"Accept": "${ACCEPT_JSON}"} @@ -806,7 +806,7 @@ PUT subscriptions Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} PATCH subscriptions log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} @@ -814,7 +814,7 @@ PATCH subscriptions Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} DELETE subscriptions log Trying to perform a DELETE. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} @@ -822,7 +822,7 @@ DELETE subscriptions Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Post Create Individual subscription log Trying to perform a POST. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} @@ -830,14 +830,14 @@ Post Create Individual subscription Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Get Individual subscription log Trying to get information about an individual subscription Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Put Individual subscription log Trying to perform a PUT. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} @@ -845,7 +845,7 @@ Put Individual subscription Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Patch Individual subscription log Trying to perform a PATCH. This method should not be implemented Set Headers {"Accept":"${ACCEPT}"} @@ -853,29 +853,29 @@ Patch Individual subscription Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Patch ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Delete Individual subscription log Try to delete an individual subscription Set Headers {"Accept":"${ACCEPT}"} Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} Delete ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Put Notification subscription log Trying to perform a PUT. This method should not be implemented Put ${callback_endpoint} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Patch Notification subscription log Trying to perform a PATCH. This method should not be implemented Patch ${callback_endpoint} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} Delete Notification subscription log Trying to perform a DELETE. This method should not be implemented Delete ${callback_endpoint} ${outputResponse}= Output response - Set Global Variable @{response} ${outputResponse} + Set Global Variable ${response} ${outputResponse} POST Operation occurrence log The POST method delivers a notification from the server to the client. ${json}= Get File schemas/NsLcmOperationOccurrenceNotification.schema.json @@ -922,4 +922,44 @@ GET test endpoint Create Mock Expectation ${req} ${rsp} Sleep ${sleep_interval} Verify Mock Expectation ${req} - Clear Requests ${callback_endpoint} \ No newline at end of file + Clear Requests ${callback_endpoint} +Check LINK in Header + ${linkURL}= Get Value From Json ${response['headers']} $..Link + Should Not Be Empty ${linkURL} + +Check Subscription resource exist + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-Type": "${CONTENT_TYPE}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions/${subscriptionId} + Integer response status 200 + +Get VNF LCM Operation occurrences with all_fields attribute selector + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs?all_fields + ${output}= Output response + Set Suite Variable ${response} ${output} + + +Get VNF LCM Operation occurrences with exclude_default attribute selector + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs?exclude_default + ${output}= Output response + Set Suite Variable ${response} ${output} + +Get VNF LCM Operation occurrences with fields attribute selector + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs?fields=${fields} + ${output}= Output response + Set Suite Variable ${response} ${output} + +Get VNF LCM Operation occurrences with exclude_fields attribute selector + Set Headers {"Accept": "${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} + GET ${apiRoot}/${apiName}/${apiVersion}/vnf_lcm_op_occs?exclude_fields=${fields} + ${output}= Output response + Set Suite Variable ${response} ${output} + \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot b/SOL002/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot index c9af09e7925b3de2ed13b16fbf7a88a9c9b92948..441bb3cf3059a5b720b65a6e4ae4d7212400caef 100644 --- a/SOL002/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot +++ b/SOL002/VNFLifecycleManagement-API/VnfLcmOperationOccurences.robot @@ -1,7 +1,7 @@ *** Settings *** Resource environment/variables.txt Resource VnfLcmOperationKeywords.robot -Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false Library JSONLibrary Library JSONSchemaLibrary schemas/ Documentation This resource represents VNF lifecycle management operation occurrences. The client can use this resource to query @@ -13,7 +13,7 @@ POST VNF LCM operation occurrences - Method not implemented ... Test title: POST VNF LCM operation occurrences - Method not implemented ... Test objective: The objective is to test that POST method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.12.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ GET status information about multiple VNF LCM operation occurrences ... Test title: GET status information about multiple VNF LCM operation occurrences ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ GET status information about multiple VNF LCM operation occurrences Bad Request ... Test title: GET status information about multiple VNF LCM operation occurrences Bad Request Invalid attribute-based filtering parameters ... Test objective: The objective is to test that GET method fail retrieving status information about multiple VNF lifecycle management operation occurrences because attribute is invalid. ... Pre-conditions: none - ... Reference: clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -51,7 +51,7 @@ GET status information about multiple VNF LCM Operation occurrences Bad Request ... Test title: GET status information about multiple VNF LCM Operation occurrences Bad Request Invalid attribute selector ... Test objective: The objective is to test that GET method fail retrieving status information about multiple VNF lifecycle management operation occurrences because attribute is invalid. ... Pre-conditions: none - ... Reference: clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ GET status information about multiple VNF LCM Operation OCC with "all_fields" ... Test title: GET status information about multiple VNF LCM Operation OCC with "all_fields" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -77,7 +77,7 @@ GET status information about multiple VNF LCM Operation OCC with "exlude_default ... Test title: GET status information about multiple VNF LCM Operation OCC with "exclude_default" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -90,7 +90,7 @@ GET status information about multiple VNF LCM Operation OCC with "fields" ... Test title: GET status information about multiple VNF LCM Operation OCC with "fields" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -103,7 +103,7 @@ GET status information about multiple VNF LCM Operation OCC with "exclude_fields ... Test title: GET status information about multiple VNF LCM Operation OCC with "exclude_fields" ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences. ... Pre-conditions: none - ... Reference: clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -112,11 +112,11 @@ GET status information about multiple VNF LCM Operation OCC with "exclude_fields Check HTTP Response Body Json Schema Is VnfLcmOpOccs PUT status information about multiple VNF LCM operation occurrences - Method not implemented - [Documentation] Test ID: 6.3.5.11.5 + [Documentation] Test ID: 6.3.5.11.9 ... Test title: PUT status information about multiple VNF LCM operation occurrences - Method not implemented ... Test objective: The objective is to test that PUT method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.12.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -124,11 +124,11 @@ PUT status information about multiple VNF LCM operation occurrences - Method not Check HTTP Response Status Code Is 405 PATCH status information about multiple VNF LCM operation occurrences - Method not implemented - [Documentation] Test ID: 6.3.5.11.6 + [Documentation] Test ID: 6.3.5.11.10 ... Test title: PATCH status information about multiple VNF LCM operation occurrences - Method not implemented ... Test objective: The objective is to test that PATCH method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.12.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -136,13 +136,39 @@ PATCH status information about multiple VNF LCM operation occurrences - Method n Check HTTP Response Status Code Is 405 DELETE status information about multiple VNF LCM operation occurrences - Method not implemented - [Documentation] Test ID: 6.3.5.11.7 + [Documentation] Test ID: 6.3.5.11.11 ... Test title: DELETE status information about multiple VNF LCM operation occurrences - Method not implemented ... Test objective: The objective is to test that DELETE method is not implemented ... Pre-conditions: none - ... Reference: clause 5.4.12.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 5.4.12.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none DELETE VNF LCM OP occurrences - Check HTTP Response Status Code Is 405 \ No newline at end of file + Check HTTP Response Status Code Is 405 + +GET status information about multiple VNF LCM operation occurances to get Paged Response + [Documentation] Test ID: 6.3.5.11.12 + ... Test title: GET status information about multiple VNF LCM operation occurances to get Paged Response + ... Test objective: The objective is to test that GET method retrieve Query status information about multiple VNF lifecycle management operation occurrences to get paged response. + ... Pre-conditions: none + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: none + ... Post-Conditions: none + GET VNF LCM OP occurrences + Check HTTP Response Status Code Is 200 + Check LINK in Header + +GET status information about multiple VNF LCM Operation occurrences Bad Request Response too big + [Documentation] Test ID: 6.3.5.11.13 + ... Test title: GET status information about multiple VNF LCM Operation occurrences Bad Request Response too big + ... Test objective: The objective is to test that GET method fail retrieving status information about multiple VNF lifecycle management operation occurrences because Response is too big. + ... Pre-conditions: none + ... Reference: Clause 5.4.12.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VE + ... Applicability: none + ... Post-Conditions: none + GET VNF LCM OP occurrences + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/environment/variables.txt b/SOL002/VNFLifecycleManagement-API/environment/variables.txt index 9e28c8cfcfbd7d1a091347dfeba169726ad5b702..af716e9c41b6901ab91a74617d4335608c927e7d 100644 --- a/SOL002/VNFLifecycleManagement-API/environment/variables.txt +++ b/SOL002/VNFLifecycleManagement-API/environment/variables.txt @@ -57,3 +57,6 @@ ${response}= httpresponse ${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar +${fields} + +${original_etag} some_etag \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/jsons/createVnfRequest.json b/SOL002/VNFLifecycleManagement-API/jsons/createVnfRequest.json index 8a1fda3bc9b3d3fbd109f0f6cec38711ec20395c..290151ae0de5286745c29b9a12df050a9b3ce9f9 100644 --- a/SOL002/VNFLifecycleManagement-API/jsons/createVnfRequest.json +++ b/SOL002/VNFLifecycleManagement-API/jsons/createVnfRequest.json @@ -1,5 +1,6 @@ { "vnfdId": "6fc3539c-e602-4afa-8e13-962fb5a7d81f", "vnfInstanceName": "string", - "vnfInstanceDescription": "string" + "vnfInstanceDescription": "string", + "metadata":{} } \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/jsons/instantiateVnfRequest.json b/SOL002/VNFLifecycleManagement-API/jsons/instantiateVnfRequest.json index 3c9f8437d2a350bf4fb1fb5d217b16f2c0c4decd..bb96e19ddce87e266b427158183da85a62c43861 100644 --- a/SOL002/VNFLifecycleManagement-API/jsons/instantiateVnfRequest.json +++ b/SOL002/VNFLifecycleManagement-API/jsons/instantiateVnfRequest.json @@ -73,5 +73,6 @@ } ], "localizationLanguage": "English", + "extensions": {}, "additionalParams": {} } \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/schemas/ApiVersionInformation.schema.json b/SOL002/VNFLifecycleManagement-API/schemas/ApiVersionInformation.schema.json new file mode 100644 index 0000000000000000000000000000000000000000..a79641197fe678896eb17d04beaac08068ea3285 --- /dev/null +++ b/SOL002/VNFLifecycleManagement-API/schemas/ApiVersionInformation.schema.json @@ -0,0 +1,39 @@ +{ + "description": "This type represents API version information.\n", + "type": "object", + "required": [ + "uriPrefix", + "apiVersions" + ], + "properties": { + "uriPrefix": { + "description": "Specifies the URI prefix for the API, in the following form {apiRoot}/{apiName}/{apiMajorVersion}/.\n", + "type": "string" + }, + "apiVersions": { + "description": "Version(s) supported for the API signaled by the uriPrefix attribute.\n", + "type": "array", + "items": { + "type": "object", + "required": [ + "version" + ], + "properties": { + "version": { + "description": "Identifies a supported version. The value of the version attribute shall be a version identifier as specified in clause 9.1 (SOL013).\n", + "type": "string" + }, + "isDeprecated": { + "description": "If such information is available, this attribute indicates whether use of the version signaled by the version attribute is deprecated (true) or not (false).\nA deprecated version is still supported by the API producer but is recommended not to be used any longer. When a version is no longer supported, it does not appear in the response body.\n", + "type": "boolean" + }, + "retirementDate": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + } + } + } + } + } +} \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/schemas/vnfInstance.schema.json b/SOL002/VNFLifecycleManagement-API/schemas/vnfInstance.schema.json index 552b1e46c701b4c762834699f7054158408fd26b..4fd68f8537d5fa1ef144cfd7f20ed3582bb1c79e 100644 --- a/SOL002/VNFLifecycleManagement-API/schemas/vnfInstance.schema.json +++ b/SOL002/VNFLifecycleManagement-API/schemas/vnfInstance.schema.json @@ -1,6 +1,6 @@ { + "description": "This type represents a VNF instance.\n", "type": "object", - "description": "This type represents a VNF instance.", "required": [ "id", "vnfdId", @@ -8,109 +8,73 @@ "vnfProductName", "vnfSoftwareVersion", "vnfdVersion", - "vnfPkgId", + "vnfPkgInfoId", "instantiationState" ], "properties": { "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfInstanceName": { - "type": "string", - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n" + "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", + "type": "string" }, "vnfInstanceDescription": { - "type": "string", - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n" + "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", + "type": "string" }, "vnfdId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfProvider": { - "type": "string", - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n" + "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", + "type": "string" }, "vnfProductName": { - "type": "string", - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n" + "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", + "type": "string" }, "vnfSoftwareVersion": { - "type": "string", - "description": "A Version.\n" + "description": "A version.\n", + "type": "string" }, "vnfdVersion": { - "type": "string", - "description": "A Version.\n" + "description": "A version.\n", + "type": "string" }, - "vnfPkgId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "vnfPkgInfoId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfConfigurableProperties": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "vimConnectionInfo": { - "type": "array", - "description": "Information about VIM connections to be used for managing the resources for the VNF instance. This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. This attribute can be modified with the PATCH method.\n", - "items": { - "type": "object", - "description": "This type represents parameters to connect to a VIM for managing the resources of a VNF instance. This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters for a VIM may be configured into the VNFM by means outside the scope of the present document, and bound to the identifier of that VIM.\n", - "required": [ - "id", - "vimType" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vimId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vimType": { - "type": "string", - "description": "Discriminator for the different types of the VIM information. The value of this attribute determines the structure of the \"interfaceInfo\" and \"accessInfo\" attributes, based on the type of the VIM. The set of permitted values is expected to change over time as new types or versions of VIMs become available. The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in Annex C of SOL003.\n" - }, - "interfaceInfo": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "accessInfo": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "extra": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - } - } - } + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" }, "instantiationState": { + "description": "The instantiation state of the VNF.\n", "type": "string", "enum": [ "NOT_INSTANTIATED", "INSTANTIATED" - ], - "description": "The instantiation state of the VNF.\n" + ] }, "instantiatedVnfInfo": { - "type": "object", "description": "Information specific to an instantiated VNF instance. This attribute shall be present if the instantiateState attribute value is INSTANTIATED.\n", + "type": "object", "required": [ "flavourId", - "vnfState" + "vnfState", + "extCpInfo" ], "properties": { "flavourId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "vnfState": { + "description": "STARTED: The VNF instance is up and running. STOPPED: The VNF instance has been shut down.\n", "type": "string", "enum": [ "STARTED", @@ -118,76 +82,75 @@ ] }, "scaleStatus": { - "type": "array", "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", + "type": "array", "items": { - "type": "object", "required": [ "aspectId", "scaleLevel" ], + "type": "object", "properties": { "aspectId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "scaleLevel": { - "type": "integer", - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n" + "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", + "type": "integer" } } } }, "extCpInfo": { - "type": "array", "description": "Information about the external CPs exposed by the VNF instance.\n", + "type": "array", "minItems": 1, "items": { + "description": "This type represents information about an external CP of a VNF. It shall comply with the provisions defined in table 5.5.3.25 1.\n", "type": "object", "required": [ "id", - "cpdId" + "cpdId", + "cpProtocolInfo" ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "cpdId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "cpProtocolInfo": { - "type": "array", "description": "Network protocol information for this CP.\n", + "type": "array", "items": { - "description": "This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. \n", + "description": "This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses.\n", "required": [ "layerProtocol" ], "properties": { "layerProtocol": { + "description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: IP_OVER_ETHERNET This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n", "type": "string", "enum": [ "IP_OVER_ETHERNET" - ], - "description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: IP_OVER_ETHERNET This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n" + ] }, "ipOverEthernet": { + "description": "This type represents information about a network address that has been assigned.\n", "type": "object", - "description": "This type represents information about a network address that has been assigned. \n", - "required": [ - "macAddress" - ], "properties": { "macAddress": { - "type": "string", "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", + "type": "string", "format": "MAC" }, "ipAddresses": { - "type": "array", "description": "Addresses assigned to the CP instance. Each entry represents IP addresses assigned by fixed or dynamic IP address assignment per subnet.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -195,49 +158,49 @@ ], "properties": { "type": { + "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n", "type": "string", "enum": [ "IPV4", "IPV6" - ], - "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n" + ] }, "addresses": { + "description": "Fixed addresses assigned (from the subnet defined by \"subnetId\" if provided). Exactly one of \"addresses\" or \"addressRange\" shall be present.\n", "type": "array", - "description": "Fixed addresses assigned (from the subnet defined by \"subnetId\" if provided).\n", "items": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } }, "isDynamic": { - "type": "boolean", - "description": "Indicates whether this set of addresses was assigned dynamically (true) or based on address information provided as input from the API consumer (false). Shall be present if \"addresses\" is present and shall be absent otherwise.\n" + "description": "Indicates whether this set of addresses was assigned dynamically (true) or based on address information provided as input from the API consumer (false). Shall be present if \"addresses\" is present and shall be absent otherwise.\n", + "type": "boolean" }, "addressRange": { - "type": "object", "description": "An IP address range used, e.g., in case of egress connections. Exactly one of \"addresses\" or \"addressRange\" shall be present.\n", + "type": "object", "required": [ "minAddress", "maxAddress" ], "properties": { "minAddress": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" }, "maxAddress": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } } }, "subnetId": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } } @@ -249,15 +212,27 @@ } }, "extLinkPortId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "associatedVnfcCpId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "associatedVnfVirtualLinkId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" } } } }, "extVirtualLinkInfo": { - "type": "array", "description": "Information about the external VLs the VNF instance is connected to.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -266,79 +241,79 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "extLinkPorts": { - "type": "array", "description": "Link ports of this VL.\n", + "type": "array", "items": { + "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", "type": "object", - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL. \n", "required": [ "id", "resourceHandle" ], "properties": { "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "cpInstanceId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" } } } @@ -347,8 +322,8 @@ } }, "extManagedVirtualLinkInfo": { - "type": "array", "description": "External virtual links the VNF instance is connected to.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -357,42 +332,42 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfVirtualLinkDescId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "networkResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "vnfLinkPorts": { - "type": "array", "description": "Link ports of this VL.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -401,38 +376,46 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "cpInstanceId": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "cpInstanceType": { + "description": "Type of the CP instance that is identified by cpInstanceId. Shall be present if \"cpInstanceId\" is present, and shall be absent otherwise. Permitted values: VNFC_CP: The link port is connected to a VNFC CP EXT_CP: The link port is associated to an external CP.\n", "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "enum": [ + "VNFC_CP", + "EXT_CP" + ] } } } @@ -441,45 +424,40 @@ } }, "monitoringParameters": { - "type": "array", "description": "Active monitoring parameters.\n", + "type": "array", "items": { "type": "object", "required": [ "id", - "value", - "timeStamp" + "performanceMetric" ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "name": { - "type": "string", - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n" + "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", + "type": "string" }, - "value": { - "type": "object", - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification.\n" - }, - "timeStamp": { - "type": "string", - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n" + "performanceMetric": { + "description": "Performance metric that is monitored. This attribute shall contain the related \"Measurement Name\" value as defined in clause 7.2 of ETSI GS NFV-IFA 027.\n", + "type": "string" } } } }, "localizationLanguage": { - "type": "string", - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n" + "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", + "type": "string" }, "vnfcResourceInfo": { - "type": "array", "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", + "type": "array", "items": { - "type": "object", "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", + "type": "object", "required": [ "id", "vduId", @@ -487,54 +465,54 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "vduId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "computeResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "storageResourceIds": { - "type": "array", "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", + "type": "array", "items": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" } }, "reservationId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfcCpInfo": { - "type": "array", "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -543,48 +521,45 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "cpdId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "vnfExtCpId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "cpProtocolInfo": { - "type": "array", "description": "Network protocol information for this CP.\n", + "type": "array", "items": { - "description": "This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. \n", + "description": "This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses.\n", "required": [ "layerProtocol" ], "properties": { "layerProtocol": { + "description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: IP_OVER_ETHERNET This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n", "type": "string", "enum": [ "IP_OVER_ETHERNET" - ], - "description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: IP_OVER_ETHERNET This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n" + ] }, "ipOverEthernet": { + "description": "This type represents information about a network address that has been assigned.\n", "type": "object", - "description": "This type represents information about a network address that has been assigned. \n", - "required": [ - "macAddress" - ], "properties": { "macAddress": { - "type": "string", "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", + "type": "string", "format": "MAC" }, "ipAddresses": { - "type": "array", "description": "Addresses assigned to the CP instance. Each entry represents IP addresses assigned by fixed or dynamic IP address assignment per subnet.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -592,49 +567,49 @@ ], "properties": { "type": { + "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n", "type": "string", "enum": [ "IPV4", "IPV6" - ], - "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n" + ] }, "addresses": { + "description": "Fixed addresses assigned (from the subnet defined by \"subnetId\" if provided). Exactly one of \"addresses\" or \"addressRange\" shall be present.\n", "type": "array", - "description": "Fixed addresses assigned (from the subnet defined by \"subnetId\" if provided).\n", "items": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } }, "isDynamic": { - "type": "boolean", - "description": "Indicates whether this set of addresses was assigned dynamically (true) or based on address information provided as input from the API consumer (false). Shall be present if \"addresses\" is present and shall be absent otherwise.\n" + "description": "Indicates whether this set of addresses was assigned dynamically (true) or based on address information provided as input from the API consumer (false). Shall be present if \"addresses\" is present and shall be absent otherwise.\n", + "type": "boolean" }, "addressRange": { - "type": "object", "description": "An IP address range used, e.g., in case of egress connections. Exactly one of \"addresses\" or \"addressRange\" shall be present.\n", + "type": "object", "required": [ "minAddress", "maxAddress" ], "properties": { "minAddress": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" }, "maxAddress": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } } }, "subnetId": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } } @@ -646,25 +621,29 @@ } }, "vnfLinkPortId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } }, "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } }, "virtualLinkResourceInfo": { - "type": "array", "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", + "type": "array", "items": { - "type": "object", "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", + "type": "object", "required": [ "id", "vnfVirtualLinkDescId", @@ -672,46 +651,46 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "vnfVirtualLinkDescId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "networkResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "reservationId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfLinkPorts": { - "type": "array", "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPortInfo). May be present otherwise.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -720,55 +699,63 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "cpInstanceId": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "cpInstanceType": { + "description": "Type of the CP instance that is identified by cpInstanceId. Shall be present if \"cpInstanceId\" is present, and shall be absent otherwise. Permitted values: VNFC_CP: The link port is connected to a VNFC CP EXT_CP: The link port is associated to an external CP.\n", "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "enum": [ + "VNFC_CP", + "EXT_CP" + ] } } } }, "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } }, "virtualStorageResourceInfo": { - "type": "array", "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", + "type": "array", "items": { - "type": "object", "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", + "type": "object", "required": [ "id", "virtualStorageDescId", @@ -776,46 +763,46 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "virtualStorageDescId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "storageResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "reservationId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } @@ -823,157 +810,147 @@ } }, "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" }, "extensions": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" }, "_links": { - "type": "object", "description": "Links to resources related to this resource.\n", + "type": "object", "required": [ "self" ], "properties": { "self": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "indicators": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "instantiate": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "terminate": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "scale": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "scaleToLevel": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "changeFlavour": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "heal": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "operate": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "changeExtConn": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } } diff --git a/SOL002/VNFLifecycleManagement-API/schemas/vnfInstances.schema.json b/SOL002/VNFLifecycleManagement-API/schemas/vnfInstances.schema.json index 7b380ec3f8455d763e0800414a1a423ae77d2150..ca8a733e86c488c6b78a9b0588ee6a1fef2c7c19 100644 --- a/SOL002/VNFLifecycleManagement-API/schemas/vnfInstances.schema.json +++ b/SOL002/VNFLifecycleManagement-API/schemas/vnfInstances.schema.json @@ -1,8 +1,8 @@ { "type:" : "array", "items": { + "description": "This type represents a VNF instance.\n", "type": "object", - "description": "This type represents a VNF instance.", "required": [ "id", "vnfdId", @@ -10,109 +10,73 @@ "vnfProductName", "vnfSoftwareVersion", "vnfdVersion", - "vnfPkgId", + "vnfPkgInfoId", "instantiationState" ], "properties": { "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfInstanceName": { - "type": "string", - "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n" + "description": "Name of the VNF instance. This attribute can be modified with the PATCH method.\n", + "type": "string" }, "vnfInstanceDescription": { - "type": "string", - "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n" + "description": "Human-readable description of the VNF instance. This attribute can be modified with the PATCH method.\n", + "type": "string" }, "vnfdId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfProvider": { - "type": "string", - "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n" + "description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n", + "type": "string" }, "vnfProductName": { - "type": "string", - "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n" + "description": "Name to identify the VNF Product. The value is copied from the VNFD.\n", + "type": "string" }, "vnfSoftwareVersion": { - "type": "string", - "description": "A Version.\n" + "description": "A version.\n", + "type": "string" }, "vnfdVersion": { - "type": "string", - "description": "A Version.\n" + "description": "A version.\n", + "type": "string" }, - "vnfPkgId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "vnfPkgInfoId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfConfigurableProperties": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "vimConnectionInfo": { - "type": "array", - "description": "Information about VIM connections to be used for managing the resources for the VNF instance. This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. This attribute can be modified with the PATCH method.\n", - "items": { - "type": "object", - "description": "This type represents parameters to connect to a VIM for managing the resources of a VNF instance. This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters for a VIM may be configured into the VNFM by means outside the scope of the present document, and bound to the identifier of that VIM.\n", - "required": [ - "id", - "vimType" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vimId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vimType": { - "type": "string", - "description": "Discriminator for the different types of the VIM information. The value of this attribute determines the structure of the \"interfaceInfo\" and \"accessInfo\" attributes, based on the type of the VIM. The set of permitted values is expected to change over time as new types or versions of VIMs become available. The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in Annex C of SOL003.\n" - }, - "interfaceInfo": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "accessInfo": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "extra": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - } - } - } + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" }, "instantiationState": { + "description": "The instantiation state of the VNF.\n", "type": "string", "enum": [ "NOT_INSTANTIATED", "INSTANTIATED" - ], - "description": "The instantiation state of the VNF.\n" + ] }, "instantiatedVnfInfo": { - "type": "object", "description": "Information specific to an instantiated VNF instance. This attribute shall be present if the instantiateState attribute value is INSTANTIATED.\n", + "type": "object", "required": [ "flavourId", - "vnfState" + "vnfState", + "extCpInfo" ], "properties": { "flavourId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "vnfState": { + "description": "STARTED: The VNF instance is up and running. STOPPED: The VNF instance has been shut down.\n", "type": "string", "enum": [ "STARTED", @@ -120,76 +84,75 @@ ] }, "scaleStatus": { - "type": "array", "description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n", + "type": "array", "items": { - "type": "object", "required": [ "aspectId", "scaleLevel" ], + "type": "object", "properties": { "aspectId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "scaleLevel": { - "type": "integer", - "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n" + "description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n", + "type": "integer" } } } }, "extCpInfo": { - "type": "array", "description": "Information about the external CPs exposed by the VNF instance.\n", + "type": "array", "minItems": 1, "items": { + "description": "This type represents information about an external CP of a VNF. It shall comply with the provisions defined in table 5.5.3.25 1.\n", "type": "object", "required": [ "id", - "cpdId" + "cpdId", + "cpProtocolInfo" ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "cpdId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "cpProtocolInfo": { - "type": "array", "description": "Network protocol information for this CP.\n", + "type": "array", "items": { - "description": "This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. \n", + "description": "This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses.\n", "required": [ "layerProtocol" ], "properties": { "layerProtocol": { + "description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: IP_OVER_ETHERNET This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n", "type": "string", "enum": [ "IP_OVER_ETHERNET" - ], - "description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: IP_OVER_ETHERNET This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n" + ] }, "ipOverEthernet": { + "description": "This type represents information about a network address that has been assigned.\n", "type": "object", - "description": "This type represents information about a network address that has been assigned. \n", - "required": [ - "macAddress" - ], "properties": { "macAddress": { - "type": "string", "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", + "type": "string", "format": "MAC" }, "ipAddresses": { - "type": "array", "description": "Addresses assigned to the CP instance. Each entry represents IP addresses assigned by fixed or dynamic IP address assignment per subnet.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -197,49 +160,49 @@ ], "properties": { "type": { + "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n", "type": "string", "enum": [ "IPV4", "IPV6" - ], - "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n" + ] }, "addresses": { + "description": "Fixed addresses assigned (from the subnet defined by \"subnetId\" if provided). Exactly one of \"addresses\" or \"addressRange\" shall be present.\n", "type": "array", - "description": "Fixed addresses assigned (from the subnet defined by \"subnetId\" if provided).\n", "items": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } }, "isDynamic": { - "type": "boolean", - "description": "Indicates whether this set of addresses was assigned dynamically (true) or based on address information provided as input from the API consumer (false). Shall be present if \"addresses\" is present and shall be absent otherwise.\n" + "description": "Indicates whether this set of addresses was assigned dynamically (true) or based on address information provided as input from the API consumer (false). Shall be present if \"addresses\" is present and shall be absent otherwise.\n", + "type": "boolean" }, "addressRange": { - "type": "object", "description": "An IP address range used, e.g., in case of egress connections. Exactly one of \"addresses\" or \"addressRange\" shall be present.\n", + "type": "object", "required": [ "minAddress", "maxAddress" ], "properties": { "minAddress": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" }, "maxAddress": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } } }, "subnetId": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } } @@ -251,15 +214,27 @@ } }, "extLinkPortId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "associatedVnfcCpId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "associatedVnfVirtualLinkId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" } } } }, "extVirtualLinkInfo": { - "type": "array", "description": "Information about the external VLs the VNF instance is connected to.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -268,79 +243,79 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "extLinkPorts": { - "type": "array", "description": "Link ports of this VL.\n", + "type": "array", "items": { + "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", "type": "object", - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL. \n", "required": [ "id", "resourceHandle" ], "properties": { "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "cpInstanceId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" } } } @@ -349,8 +324,8 @@ } }, "extManagedVirtualLinkInfo": { - "type": "array", "description": "External virtual links the VNF instance is connected to.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -359,42 +334,42 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfVirtualLinkDescId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "networkResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "vnfLinkPorts": { - "type": "array", "description": "Link ports of this VL.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -403,38 +378,46 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "cpInstanceId": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "cpInstanceType": { + "description": "Type of the CP instance that is identified by cpInstanceId. Shall be present if \"cpInstanceId\" is present, and shall be absent otherwise. Permitted values: VNFC_CP: The link port is connected to a VNFC CP EXT_CP: The link port is associated to an external CP.\n", "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "enum": [ + "VNFC_CP", + "EXT_CP" + ] } } } @@ -443,45 +426,40 @@ } }, "monitoringParameters": { - "type": "array", "description": "Active monitoring parameters.\n", + "type": "array", "items": { "type": "object", "required": [ "id", - "value", - "timeStamp" + "performanceMetric" ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "name": { - "type": "string", - "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n" + "description": "Human readable name of the monitoring parameter, as defined in the VNFD.\n", + "type": "string" }, - "value": { - "type": "object", - "description": "Value of the monitoring parameter known to the VNFM (e.g. obtained for autoscaling purposes). The type of the \"value\" attribute (i.e. scalar, structure (Object in JSON), or array (of scalars, arrays or structures/Objects)) is assumed to be defined in an external measurement specification.\n" - }, - "timeStamp": { - "type": "string", - "description": "Represents the point in time when the measurement has been performed, as known to the VNFM. Should be formatted according to ETF RFC 3339.\n" + "performanceMetric": { + "description": "Performance metric that is monitored. This attribute shall contain the related \"Measurement Name\" value as defined in clause 7.2 of ETSI GS NFV-IFA 027.\n", + "type": "string" } } } }, "localizationLanguage": { - "type": "string", - "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n" + "description": "Information about localization language of the VNF (includes e.g. strings in the VNFD). The localization languages supported by a VNF can be declared in the VNFD, and localization language selection can take place at instantiation time. The value shall comply with the format defined in IETF RFC 5646.\n", + "type": "string" }, "vnfcResourceInfo": { - "type": "array", "description": "Information about the virtualised compute and storage resources used by the VNFCs of the VNF instance.\n", + "type": "array", "items": { - "type": "object", "description": "This type represents the information on virtualised compute and storage resources used by a VNFC in a VNF instance.\n", + "type": "object", "required": [ "id", "vduId", @@ -489,54 +467,54 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "vduId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "computeResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "storageResourceIds": { - "type": "array", "description": "References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance.\n", + "type": "array", "items": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" } }, "reservationId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfcCpInfo": { - "type": "array", "description": "CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance is associated to an external CP of the VNF instance. May be present otherwise.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -545,48 +523,45 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "cpdId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "vnfExtCpId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "cpProtocolInfo": { - "type": "array", "description": "Network protocol information for this CP.\n", + "type": "array", "items": { - "description": "This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. \n", + "description": "This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses.\n", "required": [ "layerProtocol" ], "properties": { "layerProtocol": { + "description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: IP_OVER_ETHERNET This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n", "type": "string", "enum": [ "IP_OVER_ETHERNET" - ], - "description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: IP_OVER_ETHERNET This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n" + ] }, "ipOverEthernet": { + "description": "This type represents information about a network address that has been assigned.\n", "type": "object", - "description": "This type represents information about a network address that has been assigned. \n", - "required": [ - "macAddress" - ], "properties": { "macAddress": { - "type": "string", "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", + "type": "string", "format": "MAC" }, "ipAddresses": { - "type": "array", "description": "Addresses assigned to the CP instance. Each entry represents IP addresses assigned by fixed or dynamic IP address assignment per subnet.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -594,49 +569,49 @@ ], "properties": { "type": { + "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n", "type": "string", "enum": [ "IPV4", "IPV6" - ], - "description": "The type of the IP addresses. Permitted values: IPV4, IPV6.\n" + ] }, "addresses": { + "description": "Fixed addresses assigned (from the subnet defined by \"subnetId\" if provided). Exactly one of \"addresses\" or \"addressRange\" shall be present.\n", "type": "array", - "description": "Fixed addresses assigned (from the subnet defined by \"subnetId\" if provided).\n", "items": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } }, "isDynamic": { - "type": "boolean", - "description": "Indicates whether this set of addresses was assigned dynamically (true) or based on address information provided as input from the API consumer (false). Shall be present if \"addresses\" is present and shall be absent otherwise.\n" + "description": "Indicates whether this set of addresses was assigned dynamically (true) or based on address information provided as input from the API consumer (false). Shall be present if \"addresses\" is present and shall be absent otherwise.\n", + "type": "boolean" }, "addressRange": { - "type": "object", "description": "An IP address range used, e.g., in case of egress connections. Exactly one of \"addresses\" or \"addressRange\" shall be present.\n", + "type": "object", "required": [ "minAddress", "maxAddress" ], "properties": { "minAddress": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" }, "maxAddress": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } } }, "subnetId": { + "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", - "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "format": "IP" } } @@ -648,25 +623,29 @@ } }, "vnfLinkPortId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } }, "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } }, "virtualLinkResourceInfo": { - "type": "array", "description": "Information about the virtualised network resources used by the VLs of the VNF instance.\n", + "type": "array", "items": { - "type": "object", "description": "This type represents the information that allows addressing a virtualised resource that is used by an internal VL instance in a VNF instance.\n", + "type": "object", "required": [ "id", "vnfVirtualLinkDescId", @@ -674,46 +653,46 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "vnfVirtualLinkDescId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "networkResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "reservationId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "vnfLinkPorts": { - "type": "array", "description": "Links ports of this VL. Shall be present when the linkPort is used for external connectivity by the VNF (refer to VnfLinkPortInfo). May be present otherwise.\n", + "type": "array", "items": { "type": "object", "required": [ @@ -722,55 +701,63 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "cpInstanceId": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "cpInstanceType": { + "description": "Type of the CP instance that is identified by cpInstanceId. Shall be present if \"cpInstanceId\" is present, and shall be absent otherwise. Permitted values: VNFC_CP: The link port is connected to a VNFC CP EXT_CP: The link port is associated to an external CP.\n", "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "enum": [ + "VNFC_CP", + "EXT_CP" + ] } } } }, "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } }, "virtualStorageResourceInfo": { - "type": "array", "description": "Information on the virtualised storage resource(s) used as storage for the VNF instance.\n", + "type": "array", "items": { - "type": "object", "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance.\n", + "type": "object", "required": [ "id", "virtualStorageDescId", @@ -778,46 +765,46 @@ ], "properties": { "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" }, "virtualStorageDescId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" }, "storageResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, "reservationId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } @@ -825,157 +812,147 @@ } }, "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" }, "extensions": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" }, "_links": { - "type": "object", "description": "Links to resources related to this resource.\n", + "type": "object", "required": [ "self" ], "properties": { "self": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "indicators": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "instantiate": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "terminate": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "scale": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "scaleToLevel": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "changeFlavour": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "heal": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "operate": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } }, "changeExtConn": { + "description": "This type represents a link to a resource using an absolute URI.\n", "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ "href" ], "properties": { "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" } } } diff --git a/SOL002/VNFLifecycleManagement-API/schemas/vnfLcmOpOcc.schema.json b/SOL002/VNFLifecycleManagement-API/schemas/vnfLcmOpOcc.schema.json index b512b22ca821ee839d25593b8892ee8073f57f93..5558c94a4067fa85ea6a52c96dc2b36af74520f3 100644 --- a/SOL002/VNFLifecycleManagement-API/schemas/vnfLcmOpOcc.schema.json +++ b/SOL002/VNFLifecycleManagement-API/schemas/vnfLcmOpOcc.schema.json @@ -1,630 +1,580 @@ { - "type": "object", - "description": "This type represents a VNF lifecycle management operation occurrence.\n", - "required": [ - "id", - "operationState", - "stateEnteredTime", - "startTime", - "vnfInstanceId", - "operation", - "isAutomaticInvocation", - "operationParams", - "isCancelPending" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "operationState": { - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ], - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n" - }, - "stateEnteredTime": { - "type": "string", - "description": "Date-time when the current state was entered.\n", - "format": "date-time" - }, - "startTime": { - "type": "string", - "description": "Date-time of the start of the operation.\n", - "format": "date-time" - }, - "vnfInstanceId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "grantId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "operation": { - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ], - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation. \n" - }, - "isAutomaticInvocation": { - "type": "boolean", - "description": "Set to true if this VNF LCM operation occurrence has been triggered by an automated procedure inside the VNFM (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf triggered by auto-heal). Set to false otherwise.\n" - }, - "operationParams": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "isCancelPending": { - "type": "boolean", - "description": "If the VNF LCM operation occurrence is in \"STARTING\", \"PROCESSING\" or \"ROLLING_BACK\" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false.\n" - }, - "cancelMode": { - "type": "string", - "enum": [ - "GRACEFUL", - "FORCEFUL" - ], - "description": "Cancellation mode. GRACEFUL: If the VNF LCM operation occurrence is in \"PROCESSING\" or \"ROLLING_BACK\" state, the VNFM shall not start any new resource management operation and shall wait for the ongoing resource management operations in the underlying system, typically the VIM, to finish execution or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. If the VNF LCM operation occurrence is in \"STARTING\" state, the VNFM shall not start any resource management operation and shall wait for the granting request to finish execution or time out. After that, the VNFM shall put the operation occurrence into the ROLLED_BACK state. FORCEFUL: If the VNF LCM operation occurrence is in \"PROCESSING\" or \"ROLLING_BACK\" state, the VNFM shall not start any new resource management operation, shall cancel the ongoing resource management operations in the underlying system, typically the VIM, and shall wait for the cancellation to finish or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. If the VNF LCM operation occurrence is in \"STARTING\" state, the VNFM shall not start any resource management operation and put the operation occurrence into the ROLLED_BACK state.\n" - }, - "error": { - "type": "object", - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "properties": { - "type": { - "type": "string", - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "format": "URI" - }, - "title": { - "type": "string", - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n" - }, - "status": { - "type": "integer", - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n" - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem.\n" - }, - "instance": { - "type": "string", - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "format": "URI" - } + "description": "This type represents a VNF lifecycle management operation occurrence.\n", + "type": "object", + "required": [ + "id", + "operationState", + "stateEnteredTime", + "startTime", + "vnfInstanceId", + "operation", + "isAutomaticInvocation", + "isCancelPending" + ], + "properties": { + "id": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, - "required": [ - "status", - "detail" - ] - }, - "resourceChanges": { - "type": "object", - "description": "This attribute contains information about the cumulative changes to virtualised resources that were performed so far by the LCM operation since its start, if applicable.\n", - "properties": { - "affectedVnfcs": { - "type": "array", - "description": "Information about VNFC instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "items": { - "type": "object", - "description": "This type provides information about added, deleted, modified and temporary VNFCs. \n", - "required": [ - "id", - "vduId", - "changeType", - "computeResource" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - }, - "vduId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" - }, - "changeType": { - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ], - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVnfc structure exists as long as the temporary resource exists.\n" - }, - "computeResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "required": [ - "vimConnectionId", - "resourceId" - ], - "properties": { - "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" - }, - "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" - } - } - }, - "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "affectedVnfcCpIds": { - "type": "array", - "description": "Identifiers of CP(s) of the VNFC instance that were affected by the change. Shall be present for those affected CPs of the VNFC instance that are associated to an external CP of the VNF instance. May be present for further affected CPs of the VNFC instance.\n", - "items": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - } - }, - "addedStorageResourceIds": { - "type": "array", - "description": "References to VirtualStorage resources that have been added. Each value refers to a VirtualStorageResourceInfo item in the VnfInstance that was added to the VNFC. It shall be provided if at least one storage resource was added to the VNFC.\n", - "items": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - } - }, - "removedStorageResourceIds": { - "type": "array", - "description": "References to VirtualStorage resources that have been removed. The value contains the identifier of a VirtualStorageResourceInfo item that has been removed from the VNFC, and might no longer exist in the VnfInstance. It shall be provided if at least one storage resource was removed from the VNFC.\n", - "items": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - } - } - } - } - }, - "affectedVirtualLinks": { - "type": "array", - "description": "Information about VL instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "items": { - "type": "object", - "description": "This type provides information about added, deleted, modified and temporary VLs.\n", - "required": [ - "id", - "virtualLinkDescId", - "changeType", - "networkResource" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - }, - "virtualLinkDescId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" - }, - "changeType": { - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY", - "LINK_PORT_ADDED", - "LINK_PORT_REMOVED" - ], - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY * LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary resource, an AffectedVirtualLink structure exists as long as the temporary resource exists.\n" - }, - "networkResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "required": [ - "vimConnectionId", - "resourceId" - ], - "properties": { - "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" - }, - "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" - } - } - }, - "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - } - } - } - }, - "affectedVirtualStorages": { - "type": "array", - "description": "Information about virtualised storage instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "items": { - "type": "object", - "description": "This type provides information about added, deleted, modified and temporary virtual storage resources.\n", - "required": [ - "id", - "virtualStorageDescId", - "changeType", - "storageResource" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - }, - "virtualStorageDescId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" - }, - "changeType": { - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ], - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVirtualStorage structure exists as long as the temporary resource exists.\n" - }, - "storageResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "required": [ - "vimConnectionId", - "resourceId" - ], - "properties": { - "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" - }, - "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" - } - } - }, - "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - } - } - } - } - } - }, - "changedInfo": { - "type": "object", - "description": "This type represents attribute modifications that were performed on an \"Individual VNF instance\" resource. The attributes that can be included consist of those requested to be modified explicitly in the \"VnfInfoModificationRequest\" data structure, and additional attributes of the \"VnfInstance\" data structure that were modified implicitly e.g. when modifying the referenced VNF package.\n", - "properties": { - "vnfInstanceName": { - "type": "string", - "description": "If present, this attribute signals modifications of the \"vnfInstanceName\" attribute in \"VnfInstance\".\n" - }, - "vnfInstanceDescription": { - "type": "string", - "description": "If present, this attribute signals modifications of the \"vnfInstanceDescription\" attribute in \"VnfInstance\".\n" - }, - "vnfConfigurableProperties": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "extensions": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "vimConnectionInfo": { - "type": "array", - "description": "If present, this attribute signals modifications of certain entries in the \"vimConnectionInfo\" attribute array in \"VnfInstance\".\n", - "items": { - "type": "object", - "description": "This type represents parameters to connect to a VIM for managing the resources of a VNF instance. This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters for a VIM may be configured into the VNFM by means outside the scope of the present document, and bound to the identifier of that VIM.\n", - "required": [ - "id", - "vimType" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vimId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vimType": { - "type": "string", - "description": "Discriminator for the different types of the VIM information. The value of this attribute determines the structure of the \"interfaceInfo\" and \"accessInfo\" attributes, based on the type of the VIM. The set of permitted values is expected to change over time as new types or versions of VIMs become available. The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in Annex C of SOL003.\n" - }, - "interfaceInfo": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "accessInfo": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "extra": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - } - } - } - }, - "vnfPkgId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vnfdId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vnfProvider": { - "type": "string", - "description": "If present, this attribute signals modifications of the \"vnfProvider\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgIdâ€� attribute.\n" - }, - "vnfProductName": { - "type": "string", - "description": "If present, this attribute signals modifications of the \"vnfProductName\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgIdâ€� attribute.\n" - }, - "vnfSoftwareVersion": { - "type": "string", - "description": "A Version.\n" - }, - "vnfdVersion": { - "type": "string", - "description": "A Version.\n" - } - } - }, - "changedExtConnectivity": { - "type": "array", - "description": "Information about changed external connectivity, if applicable. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "items": { + "operationState": { + "description": "STARTING: The LCM operation is starting. PROCESSING: The LCM operation is currently in execution. COMPLETED: The LCM operation has been completed successfully. FAILED_TEMP: The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED: The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK: The LCM operation is currently being rolled back. ROLLED_BACK: The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", + "type": "string", + "enum": [ + "STARTING", + "PROCESSING", + "COMPLETED", + "FAILED_TEMP", + "FAILED", + "ROLLING_BACK", + "ROLLED_BACK" + ] + }, + "stateEnteredTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "startTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "vnfInstanceId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "grantId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "operation": { + "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation. \n", + "type": "string", + "enum": [ + "INSTANTIATE", + "SCALE", + "SCALE_TO_LEVEL", + "CHANGE_FLAVOUR", + "TERMINATE", + "HEAL", + "OPERATE", + "CHANGE_EXT_CONN", + "MODIFY_INFO" + ] + }, + "isAutomaticInvocation": { + "description": "The Boolean is a data type having two values (true and false).\n", + "type": "boolean" + }, + "operationParams": { + "description": "Input parameters of the LCM operation. This attribute shall be formatted according to the request data type of the related LCM operation. The following mapping between operationType and the data type of this attribute shall apply: * INSTANTIATE: InstantiateVnfRequest * SCALE: ScaleVnfRequest * SCALE_TO_LEVEL: ScaleVnfToLevelRequest * CHANGE_FLAVOUR: ChangeVnfFlavourRequest * OPERATE: OperateVnfRequest * HEAL: HealVnfRequest * CHANGE_EXT_CONN: ChangeExtVnfConnectivityRequest * TERMINATE: TerminateVnfRequest * MODIFY_INFO: VnfInfoModifications\n", + "type": "object" + }, + "isCancelPending": { + "description": "The Boolean is a data type having two values (true and false).\n", + "type": "boolean" + }, + "cancelMode": { + "description": "Cancellation mode. GRACEFUL: If the VNF LCM operation occurrence is in \"PROCESSING\" or \"ROLLING_BACK\" state, the VNFM shall not start any new resource management operation and shall wait for the ongoing resource management operations in the underlying system, typically the VIM, to finish execution or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. If the VNF LCM operation occurrence is in \"STARTING\" state, the VNFM shall not start any resource management operation and shall wait for the granting request to finish execution or time out. After that, the VNFM shall put the operation occurrence into the ROLLED_BACK state. FORCEFUL: If the VNF LCM operation occurrence is in \"PROCESSING\" or \"ROLLING_BACK\" state, the VNFM shall not start any new resource management operation, shall cancel the ongoing resource management operations in the underlying system, typically the VIM, and shall wait for the cancellation to finish or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. If the VNF LCM operation occurrence is in \"STARTING\" state, the VNFM shall not start any resource management operation and put the operation occurrence into the ROLLED_BACK state.\n", + "type": "string", + "enum": [ + "GRACEFUL", + "FORCEFUL" + ] + }, + "error": { + "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", "type": "object", "required": [ - "id", - "resourceHandle" + "status", + "detail" ], "properties": { - "id": { + "type": { + "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "format": "URI" }, - "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "required": [ - "vimConnectionId", - "resourceId" - ], - "properties": { - "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" - }, - "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "title": { + "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", + "type": "string" + }, + "status": { + "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", + "type": "integer" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.\n", + "type": "string" + }, + "instance": { + "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", + "type": "string", + "format": "URI" + } + } + }, + "resourceChanges": { + "description": "This attribute contains information about the cumulative changes to virtualised resources that were performed so far by the LCM operation since its start, if applicable.\n", + "type": "object", + "properties": { + "affectedVnfcs": { + "description": "Information about VNFC instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", + "type": "array", + "items": { + "description": "This type provides information about added, deleted, modified and temporary VNFCs.\n", + "type": "object", + "required": [ + "id", + "vduId", + "changeType", + "computeResource" + ], + "properties": { + "id": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "vduId": { + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" + }, + "changeType": { + "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVnfc structure exists as long as the temporary resource exists.\n", + "type": "string", + "enum": [ + "ADDED", + "REMOVED", + "MODIFIED", + "TEMPORARY" + ] + }, + "computeResource": { + "required": [ + "vimConnectionId", + "resourceId" + ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" + } + } + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "affectedVnfcCpIds": { + "description": "Identifiers of CP(s) of the VNFC instance that were affected by the change. Shall be present for those affected CPs of the VNFC instance that are associated to an external CP of the VNF instance. May be present for further affected CPs of the VNFC instance.\n", + "type": "array", + "items": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + } + }, + "addedStorageResourceIds": { + "description": "References to VirtualStorage resources that have been added. Each value refers to a VirtualStorageResourceInfo item in the VnfInstance that was added to the VNFC. It shall be provided if at least one storage resource was added to the VNFC.\n", + "type": "array", + "items": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + } + }, + "removedStorageResourceIds": { + "description": "References to VirtualStorage resources that have been removed. The value contains the identifier of a VirtualStorageResourceInfo item that has been removed from the VNFC, and might no longer exist in the VnfInstance. It shall be provided if at least one storage resource was removed from the VNFC.\n", + "type": "array", + "items": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + } + } } } }, - "extLinkPorts": { + "affectedVirtualLinks": { + "description": "Information about VL instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", "type": "array", - "description": "Link ports of this VL.\n", "items": { + "description": "This type provides information about added, deleted, modified and temporary VLs.\n", "type": "object", - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL. \n", "required": [ "id", - "resourceHandle" + "vnfVirtualLinkDescId", + "changeType", + "networkResource" ], "properties": { "id": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "vnfVirtualLinkDescId": { + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" + }, + "changeType": { + "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY * LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary resource, an AffectedVirtualLink structure exists as long as the temporary resource exists.\n", "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "enum": [ + "ADDED", + "REMOVED", + "MODIFIED", + "TEMPORARY", + "LINK_PORT_ADDED", + "LINK_PORT_REMOVED" + ] }, - "resourceHandle": { + "networkResource": { + "required": [ + "vimConnectionId", + "resourceId" + ], "type": "object", "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" + } + } + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + } + } + } + }, + "affectedVirtualStorages": { + "description": "Information about virtualised storage instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", + "type": "array", + "items": { + "description": "This type provides information about added, deleted, modified and temporary virtual storage resources.\n", + "type": "object", + "required": [ + "id", + "virtualStorageDescId", + "changeType", + "storageResource" + ], + "properties": { + "id": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "virtualStorageDescId": { + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" + }, + "changeType": { + "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVirtualStorage structure exists as long as the temporary resource exists.\n", + "type": "string", + "enum": [ + "ADDED", + "REMOVED", + "MODIFIED", + "TEMPORARY" + ] + }, + "storageResource": { "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, - "cpInstanceId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } } } - } - }, - "_links": { - "type": "object", - "description": "Links to resources related to this resource.\n", - "required": [ - "self", - "vnfInstance" - ], - "properties": { - "self": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" - } + }, + "changedInfo": { + "description": "This type represents attribute modifications that were performed on an \"Individual VNF instance\" resource. The attributes that can be included consist of those requested to be modified explicitly in the \"VnfInfoModificationRequest\" data structure, and additional attributes of the \"VnfInstance\" data structure that were modified implicitly e.g. when modifying the referenced VNF package.\n", + "type": "object", + "properties": { + "vnfInstanceName": { + "description": "If present, this attribute signals modifications of the \"vnfInstanceName\" attribute in \"VnfInstance\".\n", + "type": "string" + }, + "vnfInstanceDescription": { + "description": "If present, this attribute signals modifications of the \"vnfInstanceDescription\" attribute in \"VnfInstance\".\n", + "type": "string" + }, + "vnfConfigurableProperties": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "extensions": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "vnfdId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "vnfProvider": { + "description": "If present, this attribute signals modifications of the \"vnfProvider\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", + "type": "string" + }, + "vnfProductName": { + "description": "If present, this attribute signals modifications of the \"vnfProductName\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", + "type": "string" + }, + "vnfSoftwareVersion": { + "description": "A version.\n", + "type": "string" + }, + "vnfdVersion": { + "description": "A version.\n", + "type": "string" } - }, - "vnfInstance": { + } + }, + "changedExtConnectivity": { + "description": "Information about changed external connectivity, if applicable. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", + "type": "array", + "items": { "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ - "href" + "id", + "resourceHandle" ], "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "id": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceHandle": { + "required": [ + "vimConnectionId", + "resourceId" + ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" + } + } + }, + "extLinkPorts": { + "description": "Link ports of this VL.\n", + "type": "array", + "items": { + "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", + "type": "object", + "required": [ + "id", + "resourceHandle" + ], + "properties": { + "id": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceHandle": { + "required": [ + "vimConnectionId", + "resourceId" + ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" + } + } + }, + "cpInstanceId": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + } + } + } } } - }, - "grant": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + } + }, + "_links": { + "description": "Links to resources related to this resource.\n", + "type": "object", + "required": [ + "self", + "vnfInstance" + ], + "properties": { + "self": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } - } - }, - "cancel": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + }, + "vnfInstance": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } - } - }, - "retry": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + }, + "grant": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } - } - }, - "rollback": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + }, + "cancel": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } - } - }, - "fail": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + }, + "retry": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "rollback": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "fail": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } } } } } - } -} \ No newline at end of file + } \ No newline at end of file diff --git a/SOL002/VNFLifecycleManagement-API/schemas/vnfLcmOpOccs.schema.json b/SOL002/VNFLifecycleManagement-API/schemas/vnfLcmOpOccs.schema.json index 04faf6743c4084f62e9bd6792233f8b15b383b6d..d4e093968de9cd6384acdcacea5cc9475ca80a9d 100644 --- a/SOL002/VNFLifecycleManagement-API/schemas/vnfLcmOpOccs.schema.json +++ b/SOL002/VNFLifecycleManagement-API/schemas/vnfLcmOpOccs.schema.json @@ -1,633 +1,583 @@ { "type": "array", "items": { - "type": "object", - "description": "This type represents a VNF lifecycle management operation occurrence.\n", - "required": [ - "id", - "operationState", - "stateEnteredTime", - "startTime", - "vnfInstanceId", - "operation", - "isAutomaticInvocation", - "operationParams", - "isCancelPending" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "operationState": { - "type": "string", - "enum": [ - "STARTING", - "PROCESSING", - "COMPLETED", - "FAILED_TEMP", - "FAILED", - "ROLLING_BACK", - "ROLLED_BACK" - ], - "description": "Value | Description ------|------------ STARTING | The LCM operation is starting. PROCESSING | The LCM operation is currently in execution. COMPLETED | he LCM operation has been completed successfully. FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK | The LCM operation is currently being rolled back. ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n" - }, - "stateEnteredTime": { - "type": "string", - "description": "Date-time when the current state was entered.\n", - "format": "date-time" - }, - "startTime": { - "type": "string", - "description": "Date-time of the start of the operation.\n", - "format": "date-time" - }, - "vnfInstanceId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "grantId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "operation": { - "type": "string", - "enum": [ - "INSTANTIATE", - "SCALE", - "SCALE_TO_LEVEL", - "CHANGE_FLAVOUR", - "TERMINATE", - "HEAL", - "OPERATE", - "CHANGE_EXT_CONN", - "MODIFY_INFO" - ], - "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation. \n" - }, - "isAutomaticInvocation": { - "type": "boolean", - "description": "Set to true if this VNF LCM operation occurrence has been triggered by an automated procedure inside the VNFM (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf triggered by auto-heal). Set to false otherwise.\n" - }, - "operationParams": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "isCancelPending": { - "type": "boolean", - "description": "If the VNF LCM operation occurrence is in \"STARTING\", \"PROCESSING\" or \"ROLLING_BACK\" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false.\n" - }, - "cancelMode": { - "type": "string", - "enum": [ - "GRACEFUL", - "FORCEFUL" - ], - "description": "Cancellation mode. GRACEFUL: If the VNF LCM operation occurrence is in \"PROCESSING\" or \"ROLLING_BACK\" state, the VNFM shall not start any new resource management operation and shall wait for the ongoing resource management operations in the underlying system, typically the VIM, to finish execution or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. If the VNF LCM operation occurrence is in \"STARTING\" state, the VNFM shall not start any resource management operation and shall wait for the granting request to finish execution or time out. After that, the VNFM shall put the operation occurrence into the ROLLED_BACK state. FORCEFUL: If the VNF LCM operation occurrence is in \"PROCESSING\" or \"ROLLING_BACK\" state, the VNFM shall not start any new resource management operation, shall cancel the ongoing resource management operations in the underlying system, typically the VIM, and shall wait for the cancellation to finish or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. If the VNF LCM operation occurrence is in \"STARTING\" state, the VNFM shall not start any resource management operation and put the operation occurrence into the ROLLED_BACK state.\n" - }, - "error": { - "type": "object", - "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", - "properties": { - "type": { - "type": "string", - "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", - "format": "URI" - }, - "title": { - "type": "string", - "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n" - }, - "status": { - "type": "integer", - "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n" - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem.\n" - }, - "instance": { - "type": "string", - "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", - "format": "URI" - } + "description": "This type represents a VNF lifecycle management operation occurrence.\n", + "type": "object", + "required": [ + "id", + "operationState", + "stateEnteredTime", + "startTime", + "vnfInstanceId", + "operation", + "isAutomaticInvocation", + "isCancelPending" + ], + "properties": { + "id": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, - "required": [ - "status", - "detail" - ] - }, - "resourceChanges": { - "type": "object", - "description": "This attribute contains information about the cumulative changes to virtualised resources that were performed so far by the LCM operation since its start, if applicable.\n", - "properties": { - "affectedVnfcs": { - "type": "array", - "description": "Information about VNFC instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "items": { - "type": "object", - "description": "This type provides information about added, deleted, modified and temporary VNFCs. \n", - "required": [ - "id", - "vduId", - "changeType", - "computeResource" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - }, - "vduId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" - }, - "changeType": { - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ], - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVnfc structure exists as long as the temporary resource exists.\n" - }, - "computeResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "required": [ - "vimConnectionId", - "resourceId" - ], - "properties": { - "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" - }, - "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" - } - } - }, - "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "affectedVnfcCpIds": { - "type": "array", - "description": "Identifiers of CP(s) of the VNFC instance that were affected by the change. Shall be present for those affected CPs of the VNFC instance that are associated to an external CP of the VNF instance. May be present for further affected CPs of the VNFC instance.\n", - "items": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - } - }, - "addedStorageResourceIds": { - "type": "array", - "description": "References to VirtualStorage resources that have been added. Each value refers to a VirtualStorageResourceInfo item in the VnfInstance that was added to the VNFC. It shall be provided if at least one storage resource was added to the VNFC.\n", - "items": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - } - }, - "removedStorageResourceIds": { - "type": "array", - "description": "References to VirtualStorage resources that have been removed. The value contains the identifier of a VirtualStorageResourceInfo item that has been removed from the VNFC, and might no longer exist in the VnfInstance. It shall be provided if at least one storage resource was removed from the VNFC.\n", - "items": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - } - } - } - } - }, - "affectedVirtualLinks": { - "type": "array", - "description": "Information about VL instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "items": { - "type": "object", - "description": "This type provides information about added, deleted, modified and temporary VLs.\n", - "required": [ - "id", - "virtualLinkDescId", - "changeType", - "networkResource" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - }, - "virtualLinkDescId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" - }, - "changeType": { - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY", - "LINK_PORT_ADDED", - "LINK_PORT_REMOVED" - ], - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY * LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary resource, an AffectedVirtualLink structure exists as long as the temporary resource exists.\n" - }, - "networkResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "required": [ - "vimConnectionId", - "resourceId" - ], - "properties": { - "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" - }, - "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" - } - } - }, - "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - } - } - } - }, - "affectedVirtualStorages": { - "type": "array", - "description": "Information about virtualised storage instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "items": { - "type": "object", - "description": "This type provides information about added, deleted, modified and temporary virtual storage resources.\n", - "required": [ - "id", - "virtualStorageDescId", - "changeType", - "storageResource" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" - }, - "virtualStorageDescId": { - "type": "string", - "description": "An identifier that is unique within a VNF descriptor.\n" - }, - "changeType": { - "type": "string", - "enum": [ - "ADDED", - "REMOVED", - "MODIFIED", - "TEMPORARY" - ], - "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVirtualStorage structure exists as long as the temporary resource exists.\n" - }, - "storageResource": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "required": [ - "vimConnectionId", - "resourceId" - ], - "properties": { - "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" - }, - "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" - } - } - }, - "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - } - } - } - } - } - }, - "changedInfo": { - "type": "object", - "description": "This type represents attribute modifications that were performed on an \"Individual VNF instance\" resource. The attributes that can be included consist of those requested to be modified explicitly in the \"VnfInfoModificationRequest\" data structure, and additional attributes of the \"VnfInstance\" data structure that were modified implicitly e.g. when modifying the referenced VNF package.\n", - "properties": { - "vnfInstanceName": { - "type": "string", - "description": "If present, this attribute signals modifications of the \"vnfInstanceName\" attribute in \"VnfInstance\".\n" - }, - "vnfInstanceDescription": { - "type": "string", - "description": "If present, this attribute signals modifications of the \"vnfInstanceDescription\" attribute in \"VnfInstance\".\n" - }, - "vnfConfigurableProperties": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "metadata": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "extensions": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "vimConnectionInfo": { - "type": "array", - "description": "If present, this attribute signals modifications of certain entries in the \"vimConnectionInfo\" attribute array in \"VnfInstance\".\n", - "items": { - "type": "object", - "description": "This type represents parameters to connect to a VIM for managing the resources of a VNF instance. This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters for a VIM may be configured into the VNFM by means outside the scope of the present document, and bound to the identifier of that VIM.\n", - "required": [ - "id", - "vimType" - ], - "properties": { - "id": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vimId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vimType": { - "type": "string", - "description": "Discriminator for the different types of the VIM information. The value of this attribute determines the structure of the \"interfaceInfo\" and \"accessInfo\" attributes, based on the type of the VIM. The set of permitted values is expected to change over time as new types or versions of VIMs become available. The ETSI NFV registry of VIM-related information provides access to information about VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in Annex C of SOL003.\n" - }, - "interfaceInfo": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "accessInfo": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - }, - "extra": { - "type": "object", - "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159. \n" - } - } - } - }, - "vnfPkgId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vnfdId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "vnfProvider": { - "type": "string", - "description": "If present, this attribute signals modifications of the \"vnfProvider\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgIdâ€� attribute.\n" - }, - "vnfProductName": { - "type": "string", - "description": "If present, this attribute signals modifications of the \"vnfProductName\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgIdâ€� attribute.\n" - }, - "vnfSoftwareVersion": { - "type": "string", - "description": "A Version.\n" - }, - "vnfdVersion": { - "type": "string", - "description": "A Version.\n" - } - } - }, - "changedExtConnectivity": { - "type": "array", - "description": "Information about changed external connectivity, if applicable. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", - "items": { + "operationState": { + "description": "STARTING: The LCM operation is starting. PROCESSING: The LCM operation is currently in execution. COMPLETED: The LCM operation has been completed successfully. FAILED_TEMP: The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED: The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action won't succeed. ROLLING_BACK: The LCM operation is currently being rolled back. ROLLED_BACK: The LCM operation has been successfully rolled back, i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible.\n", + "type": "string", + "enum": [ + "STARTING", + "PROCESSING", + "COMPLETED", + "FAILED_TEMP", + "FAILED", + "ROLLING_BACK", + "ROLLED_BACK" + ] + }, + "stateEnteredTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "startTime": { + "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n", + "type": "string", + "format": "date-time" + }, + "vnfInstanceId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "grantId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "operation": { + "description": "Value | Description ------|------------ INSTANTIATE | Represents the \"Instantiate VNF\" LCM operation. SCALE | Represents the \"Scale VNF\" LCM operation. SCALE_TO_LEVEL | Represents the \"Scale VNF to Level\" LCM operation. CHANGE_FLAVOUR | Represents the \"Change VNF Flavour\" LCM operation. TERMINATE | Represents the \"Terminate VNF\" LCM operation. HEAL | Represents the \"Heal VNF\" LCM operation. OPERATE | Represents the \"Operate VNF\" LCM operation. CHANGE_EXT_CONN | Represents the \"Change external VNF connectivity\" LCM operation. MODIFY_INFO | Represents the \"Modify VNF Information\" LCM operation. \n", + "type": "string", + "enum": [ + "INSTANTIATE", + "SCALE", + "SCALE_TO_LEVEL", + "CHANGE_FLAVOUR", + "TERMINATE", + "HEAL", + "OPERATE", + "CHANGE_EXT_CONN", + "MODIFY_INFO" + ] + }, + "isAutomaticInvocation": { + "description": "The Boolean is a data type having two values (true and false).\n", + "type": "boolean" + }, + "operationParams": { + "description": "Input parameters of the LCM operation. This attribute shall be formatted according to the request data type of the related LCM operation. The following mapping between operationType and the data type of this attribute shall apply: * INSTANTIATE: InstantiateVnfRequest * SCALE: ScaleVnfRequest * SCALE_TO_LEVEL: ScaleVnfToLevelRequest * CHANGE_FLAVOUR: ChangeVnfFlavourRequest * OPERATE: OperateVnfRequest * HEAL: HealVnfRequest * CHANGE_EXT_CONN: ChangeExtVnfConnectivityRequest * TERMINATE: TerminateVnfRequest * MODIFY_INFO: VnfInfoModifications\n", + "type": "object" + }, + "isCancelPending": { + "description": "The Boolean is a data type having two values (true and false).\n", + "type": "boolean" + }, + "cancelMode": { + "description": "Cancellation mode. GRACEFUL: If the VNF LCM operation occurrence is in \"PROCESSING\" or \"ROLLING_BACK\" state, the VNFM shall not start any new resource management operation and shall wait for the ongoing resource management operations in the underlying system, typically the VIM, to finish execution or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. If the VNF LCM operation occurrence is in \"STARTING\" state, the VNFM shall not start any resource management operation and shall wait for the granting request to finish execution or time out. After that, the VNFM shall put the operation occurrence into the ROLLED_BACK state. FORCEFUL: If the VNF LCM operation occurrence is in \"PROCESSING\" or \"ROLLING_BACK\" state, the VNFM shall not start any new resource management operation, shall cancel the ongoing resource management operations in the underlying system, typically the VIM, and shall wait for the cancellation to finish or to time out. After that, the VNFM shall put the operation occurrence into the FAILED_TEMP state. If the VNF LCM operation occurrence is in \"STARTING\" state, the VNFM shall not start any resource management operation and put the operation occurrence into the ROLLED_BACK state.\n", + "type": "string", + "enum": [ + "GRACEFUL", + "FORCEFUL" + ] + }, + "error": { + "description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced inthis structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n", "type": "object", "required": [ - "id", - "resourceHandle" + "status", + "detail" ], "properties": { - "id": { + "type": { + "description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n", "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "format": "URI" }, - "resourceHandle": { - "type": "object", - "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", - "required": [ - "vimConnectionId", - "resourceId" - ], - "properties": { - "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" - }, - "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" - }, - "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "title": { + "description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n", + "type": "string" + }, + "status": { + "description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n", + "type": "integer" + }, + "detail": { + "description": "A human-readable explanation specific to this occurrence of the problem.\n", + "type": "string" + }, + "instance": { + "description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n", + "type": "string", + "format": "URI" + } + } + }, + "resourceChanges": { + "description": "This attribute contains information about the cumulative changes to virtualised resources that were performed so far by the LCM operation since its start, if applicable.\n", + "type": "object", + "properties": { + "affectedVnfcs": { + "description": "Information about VNFC instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", + "type": "array", + "items": { + "description": "This type provides information about added, deleted, modified and temporary VNFCs.\n", + "type": "object", + "required": [ + "id", + "vduId", + "changeType", + "computeResource" + ], + "properties": { + "id": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "vduId": { + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" + }, + "changeType": { + "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVnfc structure exists as long as the temporary resource exists.\n", + "type": "string", + "enum": [ + "ADDED", + "REMOVED", + "MODIFIED", + "TEMPORARY" + ] + }, + "computeResource": { + "required": [ + "vimConnectionId", + "resourceId" + ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" + } + } + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "affectedVnfcCpIds": { + "description": "Identifiers of CP(s) of the VNFC instance that were affected by the change. Shall be present for those affected CPs of the VNFC instance that are associated to an external CP of the VNF instance. May be present for further affected CPs of the VNFC instance.\n", + "type": "array", + "items": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + } + }, + "addedStorageResourceIds": { + "description": "References to VirtualStorage resources that have been added. Each value refers to a VirtualStorageResourceInfo item in the VnfInstance that was added to the VNFC. It shall be provided if at least one storage resource was added to the VNFC.\n", + "type": "array", + "items": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + } + }, + "removedStorageResourceIds": { + "description": "References to VirtualStorage resources that have been removed. The value contains the identifier of a VirtualStorageResourceInfo item that has been removed from the VNFC, and might no longer exist in the VnfInstance. It shall be provided if at least one storage resource was removed from the VNFC.\n", + "type": "array", + "items": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + } + } } } }, - "extLinkPorts": { + "affectedVirtualLinks": { + "description": "Information about VL instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", "type": "array", - "description": "Link ports of this VL.\n", "items": { + "description": "This type provides information about added, deleted, modified and temporary VLs.\n", "type": "object", - "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL. \n", "required": [ "id", - "resourceHandle" + "vnfVirtualLinkDescId", + "changeType", + "networkResource" ], "properties": { "id": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "vnfVirtualLinkDescId": { + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" + }, + "changeType": { + "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY * LINK_PORT_ADDED * LINK_PORT_REMOVED For a temporary resource, an AffectedVirtualLink structure exists as long as the temporary resource exists.\n", "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "enum": [ + "ADDED", + "REMOVED", + "MODIFIED", + "TEMPORARY", + "LINK_PORT_ADDED", + "LINK_PORT_REMOVED" + ] }, - "resourceHandle": { + "networkResource": { + "required": [ + "vimConnectionId", + "resourceId" + ], "type": "object", "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" + } + } + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + } + } + } + }, + "affectedVirtualStorages": { + "description": "Information about virtualised storage instances that were affected during the lifecycle operation. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", + "type": "array", + "items": { + "description": "This type provides information about added, deleted, modified and temporary virtual storage resources.\n", + "type": "object", + "required": [ + "id", + "virtualStorageDescId", + "changeType", + "storageResource" + ], + "properties": { + "id": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + }, + "virtualStorageDescId": { + "description": "An identifier that is unique within a VNF descriptor.\n", + "type": "string" + }, + "changeType": { + "description": "Signals the type of change. Permitted values: * ADDED * REMOVED * MODIFIED * TEMPORARY For a temporary resource, an AffectedVirtualStorage structure exists as long as the temporary resource exists.\n", + "type": "string", + "enum": [ + "ADDED", + "REMOVED", + "MODIFIED", + "TEMPORARY" + ] + }, + "storageResource": { "required": [ "vimConnectionId", "resourceId" ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", "properties": { "vimConnectionId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceProviderId": { - "type": "string", - "description": "An identifier with the intention of being globally unique.\n" + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" }, "resourceId": { - "type": "string", - "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n" + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" }, "vimLevelResourceType": { - "type": "string", - "description": "Type of the resource in the scope of the VIM or the resource provider.\n" + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" } } }, - "cpInstanceId": { - "type": "string", - "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n" + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" } } } } } - } - }, - "_links": { - "type": "object", - "description": "Links to resources related to this resource.\n", - "required": [ - "self", - "vnfInstance" - ], - "properties": { - "self": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" - } + }, + "changedInfo": { + "description": "This type represents attribute modifications that were performed on an \"Individual VNF instance\" resource. The attributes that can be included consist of those requested to be modified explicitly in the \"VnfInfoModificationRequest\" data structure, and additional attributes of the \"VnfInstance\" data structure that were modified implicitly e.g. when modifying the referenced VNF package.\n", + "type": "object", + "properties": { + "vnfInstanceName": { + "description": "If present, this attribute signals modifications of the \"vnfInstanceName\" attribute in \"VnfInstance\".\n", + "type": "string" + }, + "vnfInstanceDescription": { + "description": "If present, this attribute signals modifications of the \"vnfInstanceDescription\" attribute in \"VnfInstance\".\n", + "type": "string" + }, + "vnfConfigurableProperties": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "metadata": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "extensions": { + "description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n", + "type": "object" + }, + "vnfdId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "vnfProvider": { + "description": "If present, this attribute signals modifications of the \"vnfProvider\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", + "type": "string" + }, + "vnfProductName": { + "description": "If present, this attribute signals modifications of the \"vnfProductName\" attribute in \"VnfInstance\". If present, this attribute (which depends on the value of the \"vnfPkgId\" attribute) was modified implicitly following a request to modify the \"vnfPkgId\" attribute, by copying the value of this attribute from the VNFD in the VNF Package identified by the \"vnfPkgId” attribute.\n", + "type": "string" + }, + "vnfSoftwareVersion": { + "description": "A version.\n", + "type": "string" + }, + "vnfdVersion": { + "description": "A version.\n", + "type": "string" } - }, - "vnfInstance": { + } + }, + "changedExtConnectivity": { + "description": "Information about changed external connectivity, if applicable. This allows the NFVO to obtain the information contained in the latest \"result\" notification if it has not received it due to an error or a wrongly configured subscription filter.\n", + "type": "array", + "items": { "type": "object", - "description": "This type represents a link to a resource.\n", "required": [ - "href" + "id", + "resourceHandle" ], "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + "id": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceHandle": { + "required": [ + "vimConnectionId", + "resourceId" + ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" + } + } + }, + "extLinkPorts": { + "description": "Link ports of this VL.\n", + "type": "array", + "items": { + "description": "This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to an NS VL.\n", + "type": "object", + "required": [ + "id", + "resourceHandle" + ], + "properties": { + "id": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceHandle": { + "required": [ + "vimConnectionId", + "resourceId" + ], + "type": "object", + "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n", + "properties": { + "vimConnectionId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceProviderId": { + "description": "An identifier with the intention of being globally unique.\n", + "type": "string" + }, + "resourceId": { + "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n", + "type": "string" + }, + "vimLevelResourceType": { + "description": "The value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003).\n", + "type": "string" + } + } + }, + "cpInstanceId": { + "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", + "type": "string" + } + } + } } } - }, - "grant": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + } + }, + "_links": { + "description": "Links to resources related to this resource.\n", + "type": "object", + "required": [ + "self", + "vnfInstance" + ], + "properties": { + "self": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } - } - }, - "cancel": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + }, + "vnfInstance": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } - } - }, - "retry": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + }, + "grant": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } - } - }, - "rollback": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + }, + "cancel": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } - } - }, - "fail": { - "type": "object", - "description": "This type represents a link to a resource.\n", - "required": [ - "href" - ], - "properties": { - "href": { - "type": "string", - "description": "URI of the referenced resource.\n", - "format": "url" + }, + "retry": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "rollback": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } + } + }, + "fail": { + "description": "This type represents a link to a resource using an absolute URI.\n", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "description": "String formatted according to IETF RFC 3986.\n", + "type": "string" + } } } } } } } -} } \ No newline at end of file diff --git a/SOL002/VNFPerformanceManagement-API/ApiVersion.robot b/SOL002/VNFPerformanceManagement-API/ApiVersion.robot new file mode 100644 index 0000000000000000000000000000000000000000..4e36c2637427c993a44ac7e267eb48993e95fbb6 --- /dev/null +++ b/SOL002/VNFPerformanceManagement-API/ApiVersion.robot @@ -0,0 +1,211 @@ +*** Settings *** +Resource environment/variables.txt +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library DependencyLibrary +Library JSONLibrary +Library JSONSchemaLibrary schemas/ + +*** Test Cases *** +POST API Version - Method not implemented + [Documentation] Test ID: 6.3.2.7.1 + ... Test title: POST API version - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version + [Documentation] Test ID: 6.3.2.7.2 + ... Test title: GET API Version + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version - Method not implemented + [Documentation] Test ID: 6.3.2.7.3 + ... Test title: PUT API Version - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version - Method not implemented + [Documentation] Test ID: 6.3.2.7.4 + ... Test title: PATCH API Version - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version - Method not implemented + [Documentation] Test ID: 6.3.2.7.5 + ... Test title: DELETE API Version - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +POST API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.2.7.6 + ... Test title: POST API version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that POST method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.1 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + POST API Version + Check HTTP Response Status Code Is 405 + +GET API Version with apiMajorVerion + [Documentation] Test ID: 6.3.2.7.7 + ... Test title: GET API Version with apiMajorVerion + ... Test objective: The objective is to test that GET method successfully return ApiVersionInformation + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.2 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET API Version + Check HTTP Response Status Code Is 200 + Check HTTP Response Body Json Schema Is ApiVersionInformation + +PUT API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.2.7.8 + ... Test title: PUT API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PUT method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.3 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PUT API Version + Check HTTP Response Status Code Is 405 + +PATCH API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.2.7.9 + ... Test title: PATCH API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that PATCH method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.4 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + PATCH API Version + Check HTTP Response Status Code Is 405 + +DELETE API Version with apiMajorVerion - Method not implemented + [Documentation] Test ID: 6.3.2.7.10 + ... Test title: DELETE API Version with apiMajorVerion - Method not implemented + ... Test objective: The objective is to test that DELETE method is not implemented + ... Pre-conditions: none + ... Reference: Clause 9.3.3.3.5 - ETSI GS NFV-SOL 013 v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + DELETE API Version + Check HTTP Response Status Code Is 405 + +*** Keywords *** +POST API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +POST API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Post ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +GET API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Get ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PUT API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Put ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +PATCH API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Patch ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +DELETE API Version with apiMajorVersion + Set Headers {"Accept":"${ACCEPT_JSON}"} + Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"} + Delete ${apiRoot}/${apiName}/v1/api_version + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + +Check HTTP Response Status Code Is + [Arguments] ${expected_status} + Should Be Equal ${response['status']} ${expected_status} + Log Status code validated + +Check HTTP Response Body Json Schema Is + [Arguments] ${input} + ${schema} = Catenate ${input} .schema.json + Validate Json ${schema} ${response['body']} + Log Json Schema Validation OK \ No newline at end of file diff --git a/SOL002/VNFPerformanceManagement-API/IndividualPmJob.robot b/SOL002/VNFPerformanceManagement-API/IndividualPmJob.robot index ed06e23a91d5d9069b99bc44726a898483892cde..5c49a39fe0399ae99d1e969b69cd34f2ac770b72 100644 --- a/SOL002/VNFPerformanceManagement-API/IndividualPmJob.robot +++ b/SOL002/VNFPerformanceManagement-API/IndividualPmJob.robot @@ -11,7 +11,7 @@ GET individual VNF Performance Job ... Test title: Get individual VNF Performance Job ... Test objective: The objective is to test the retrieval of an individual VNF performance monitoring job and perform a JSON schema and content validation of the collected job data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: clause 6.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -25,7 +25,7 @@ GET individual VNF Performance Job with invalid resource identifier ... Test title: Get individual VNF Performance Job with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF performance monitoring job fails when using an invalid resource identifier, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: clause 6.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.3.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ DELETE Individual VNF Performance Job ... Test title: Delete Individual VNF Performance Job ... Test objective: The objective is to test the deletion of an individual VNF performance monitoring job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: clause 6.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Job is no more available in the VNFM @@ -51,7 +51,7 @@ DELETE Individual VNF Performance Job with invalid resource identifier ... Test title: Delete individual VNF Performance Job with invalid resource identifier ... Test objective: The objective is to test that the deletion of an individual VNF performance monitoring job fails when using an invalid resource identifier, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: clause 6.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.3.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ POST Individual VNF Performance Job - Method not implemented ... Test title: POST Individual VNF Performance Job - method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF Performance Monitoring Job ... Pre-conditions: A VNF instance is instantiated - ... Reference: clause 6.4.3.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.3.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Job is not created on the VNFM @@ -77,7 +77,7 @@ PUT Individual VNF Performance Job - Method not implemented ... Test title: PUT Individual VNF Performance Job - method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update an existing VNF Performance Monitoring Job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: clause 6.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Job is not modified by the operation @@ -90,7 +90,7 @@ PATCH Individual VNF Performance Job - Method not implemented ... Test title: PATCH Individual VNF Performance Job - method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify an existing new VNF Performance Monitoring Job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: clause 6.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.3.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Job is not modified by the operation diff --git a/SOL002/VNFPerformanceManagement-API/IndividualReport.robot b/SOL002/VNFPerformanceManagement-API/IndividualReport.robot index a08e14ddb6c42d2f8cdeccb1df4b5df4a79b83ba..9a8f99a2c674618c29cfee19770d6bbec6e72c9c 100644 --- a/SOL002/VNFPerformanceManagement-API/IndividualReport.robot +++ b/SOL002/VNFPerformanceManagement-API/IndividualReport.robot @@ -11,7 +11,7 @@ Get Individual Performance Report ... Test title: Get Individual Performance Report ... Test objective: The objective is to test the retrieval of an individual VNF performance report associated to a monitoring job and perform a JSON schema validation of the collected report data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: clause 6.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -24,7 +24,7 @@ Get Individual Performance Report with invalid resource endpoint ... Test title: Get Individual Performance Report with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of an individual VNF performance report associated to a monitoring job fails when using an invalid resource endpoint ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: clause 6.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.4.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -36,7 +36,7 @@ POST Individual Performance Report - Method not implemented ... Test title: POST Individual Performance Report - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF performance report within a monitoring job ... Pre-conditions: A VNF instance is instantiated. - ... Reference: clause 6.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.4.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF performance report is not created on the VNFM @@ -49,7 +49,7 @@ PUT Individual Performance Report - Method not implemented ... Test title: PUT Individual Performance Report - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update an existing VNF performance report within a monitoring job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: clause 6.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.4.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF performance report is not modified by the operation @@ -62,7 +62,7 @@ PATCH Individual Performance Report - Method not implemented ... Test title: PATCH Individual Performance Report - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify an existing VNF performance report within a monitoring job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: clause 6.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.4.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF performance report is not modified by the operation @@ -75,7 +75,7 @@ DELETE Individual Performance Report - Method not implemented ... Test title: DELETE Individual Performance Report - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to delete an existing VNF performance report within a monitoring job ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance reports are set for a monitoring job in the VNFM. - ... Reference: clause 6.4.4.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.4.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF performance report is not deleted by the operation diff --git a/SOL002/VNFPerformanceManagement-API/IndividualSubscription.robot b/SOL002/VNFPerformanceManagement-API/IndividualSubscription.robot index a63eae2d4544800079852dcafebc5391c2e9b6b0..39acdca29ea3f3c9803b19fa9e65e96589e80167 100644 --- a/SOL002/VNFPerformanceManagement-API/IndividualSubscription.robot +++ b/SOL002/VNFPerformanceManagement-API/IndividualSubscription.robot @@ -13,7 +13,7 @@ GET Individual VNF Performance Subscription ... Test title: GET Individual VNF Performance Subscription ... Test objective: The objective is to test the retrieval of individual VNF performance subscription and perform a JSON schema and content validation of the returned subscription data structure ... Pre-conditions: A VNF instance is instantiated. At least one VNF performance subscription is available in the VNFM. - ... Reference: clause 6.4.8.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.8.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -27,7 +27,7 @@ GET Individual VNF Performance Subscription with invalid resource identifier ... Test title: GET Individual VNF Performance Subscription with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF performance subscription fails when using an invalid resource identifier ... Pre-conditions: A VNF instance is instantiated. At least one VNF performance subscription is available in the VNFM. - ... Reference: clause 6.4.8.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.8.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -39,7 +39,7 @@ DELETE Individual VNF Performance Subscription ... Test title: DELETE Individual VNF Performance Subscription ... Test objective: The objective is to test the deletion of an individual VNF performance subscription ... Pre-conditions: A VNF instance is instantiated. At least one VNF performance subscription is available in the VNFM. - ... Reference: clause 6.4.8.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.8.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Subscription is not available anymore in the VNFM @@ -52,7 +52,7 @@ DELETE Individual VNF Performance Subscription with invalid resource identifier ... Test title: DELETE Individual VNF Performance Subscription with invalid resource identifier ... Test objective: The objective is to test that the deletion of an individual VNF performance subscription fails when using an invalid resource identifier ... Pre-conditions: A VNF instance is instantiated. At least one VNF performance subscription is available in the VNFM. - ... Reference: clause 6.4.8.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.8.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -64,7 +64,7 @@ POST Individual VNF Performance Subscription - Method not implemented ... Test title: POST Individual VNF Performance Subscription - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF Performance Subscription ... Pre-conditions: A VNF instance is instantiated - ... Reference: clause 6.4.8.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.8.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Subscription is not created on the VNFM @@ -77,7 +77,7 @@ PUT Individual VNF Performance Subscription - Method not implemented ... Test title: PUT Individual VNF Performance Subscription - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update an existing VNF Performance subscription ... Pre-conditions: A VNF instance is instantiated. At least one VNF performance subscription is available in the VNFM. - ... Reference: clause 6.4.8.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.8.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance subscription is not modified by the operation @@ -90,7 +90,7 @@ PATCH Individual VNF Performance Subscription - Method not implemented ... Test title: PATCH Individual VNF Performance Subscription - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify an existing VNF Performance subscription ... Pre-conditions: A VNF instance is instantiated. At least one VNF performance subscription is available in the VNFM. - ... Reference: clause 6.4.8.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.8.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance subscription is not modified by the operation diff --git a/SOL002/VNFPerformanceManagement-API/IndividualThreshold.robot b/SOL002/VNFPerformanceManagement-API/IndividualThreshold.robot index 03b1b3beee7b887f25aab9fd1c3bb61b23bbb09c..1a68cdce9f44f0d19583cfa4b1e962ce4316dbbc 100644 --- a/SOL002/VNFPerformanceManagement-API/IndividualThreshold.robot +++ b/SOL002/VNFPerformanceManagement-API/IndividualThreshold.robot @@ -12,7 +12,7 @@ GET Individual Threshold ... Test title: GET Individual Threshold ... Test objective: The objective is to test the retrieval of an individual VNF performance threshold and perform a JSON schema and content validation of the collected threshold data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: clause 6.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -26,7 +26,7 @@ GET Individual Threshold with invalid resource identifier ... Test title: GET Individual Threshold with invalid resource identifier ... Test objective: The objective is to test that the retrieval of an individual VNF performance threshold fails when using an invalid resource identifier ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNFM. - ... Reference: clause 6.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.6.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -38,7 +38,7 @@ DELETE Individual Threshold ... Test title: DELETE Individual Threshold ... Test objective: The objective is to test the deletion of an individual VNF performance threshold ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: clause 6.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Threshold is not available anymore in the VNFM @@ -51,7 +51,7 @@ DELETE Individual Threshold with invalid resource identifier ... Test title: DELETE Individual Threshold with invalid resource identifier ... Test objective: The objective is to test the deletion of an individual VNF performance threshold ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: clause 6.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.6.3.5 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -63,7 +63,7 @@ POST Individual Threshold - Method not implemented ... Test title: POST Individual Threshold - Method not implemented ... Test objective: The objective is to test that POST method is not allowed to create a new VNF Performance Threshold ... Pre-conditions: A VNF instance is instantiated - ... Reference: clause 6.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.6.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Threshold is not created on the VNFM @@ -76,7 +76,7 @@ PUT Individual Threshold - Method not implemented ... Test title: PUT Individual Threshold - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to update an existing VNF Performance threshold ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: clause 6.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.6.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Threshold is not modified by the operation @@ -89,7 +89,7 @@ PATCH Individual Threshold - Method not implemented ... Test title: PATCH Individual Threshold - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to modify an existing VNF Performance threshold ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance thresholds are set in the VNFM. - ... Reference: clause 6.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.6.3.4 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Threshold is not modified by the operation @@ -104,7 +104,7 @@ GET Individual VNF Performance Threshold Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": ${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/thresholds/${thresholdId} ${output}= Output response - Set Suite Variable @{response} ${output} + Set Suite Variable ${response} ${output} GET individual VNF Performance Threshold with invalid resource identifier Log Trying to get a Threhsold with invalid resource endpoint @@ -112,28 +112,28 @@ GET individual VNF Performance Threshold with invalid resource identifier Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": ${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/thresholds/${erroneousThresholdId} ${output}= Output response - Set Suite Variable @{response} ${output} + Set Suite Variable ${response} ${output} Send Delete request for individual VNF Performance Threshold Log Trying to delete a Threhsold in the VNFM Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": ${AUTHORIZATION}"} DELETE ${apiRoot}/${apiName}/${apiVersion}/thresholds/${thresholdId} ${output}= Output response - Set Suite Variable @{response} ${output} + Set Suite Variable ${response} ${output} Send Delete request for individual VNF Performance Threshold with invalid resource identifier Log Trying to delete a Threhsold in the VNFM with invalid id Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": ${AUTHORIZATION}"} DELETE ${apiRoot}/${apiName}/${apiVersion}/thresholds/${erroneousThresholdId} ${output}= Output response - Set Suite Variable @{response} ${output} + Set Suite Variable ${response} ${output} Send Post request for individual VNF Performance Threshold Log Trying to create new threshold Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": ${AUTHORIZATION}"} POST ${apiRoot}/${apiName}/${apiVersion}/thresholds/${newThresholdId} ${output}= Output response - Set Suite Variable @{response} ${output} + Set Suite Variable ${response} ${output} Send Put request for individual VNF Performance Threshold Log Trying to PUT threshold @@ -144,7 +144,7 @@ Send Put request for individual VNF Performance Threshold Set Suite Variable ${origResponse} ${origOutput} PUT ${apiRoot}/${apiName}/${apiVersion}/thresholds/${thresholdId} ${output}= Output response - Set Suite Variable @{response} ${output} + Set Suite Variable ${response} ${output} Send Patch request for individual VNF Performance Threshold Log Trying to PUT threshold @@ -155,7 +155,7 @@ Send Patch request for individual VNF Performance Threshold Set Suite Variable ${origResponse} ${origOutput} PATCH ${apiRoot}/${apiName}/${apiVersion}/thresholds/${thresholdId} ${output}= Output response - Set Suite Variable @{response} ${output} + Set Suite Variable ${response} ${output} Check Postcondition VNF Performance Threshold is Unmodified (Implicit) Log Check postconidtion threshold not modified @@ -171,7 +171,7 @@ Check Postcondition VNF Performance Threshold is not Created Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"} GET ${apiRoot}/${apiName}/${apiVersion}/thresholds/${newThresholdId} ${output}= Output response - Set Suite Variable @{response} ${output} + Set Suite Variable ${response} ${output} Check HTTP Response Status Code Is 404 Check Postcondition VNF Performance Threshold is Deleted diff --git a/SOL002/VNFPerformanceManagement-API/PMJobs.robot b/SOL002/VNFPerformanceManagement-API/PMJobs.robot index bc6f070f124c8cde93234af6ecf8fbef84f0d01c..577623b1567b0894a798f15b31b59d3d22c15841 100644 --- a/SOL002/VNFPerformanceManagement-API/PMJobs.robot +++ b/SOL002/VNFPerformanceManagement-API/PMJobs.robot @@ -3,6 +3,7 @@ Library JSONSchemaLibrary schemas/ Resource environment/variables.txt # Generic Parameters Library JSONLibrary Library OperatingSystem +Library String Resource environment/pmJobs.txt Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false @@ -12,7 +13,7 @@ GET all VNF Performance Monitoring Jobs ... Test title: GET all VNF Performance Monitoring Jobs ... Test objective: The objective is to test the retrieval of all the available VNF performance monitoring jobs and perform a JSON schema and content validation of the collected jobs data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -26,7 +27,7 @@ GET VNF Performance Monitoring Jobs with attribute-based filter ... Test title: GET all VNF Performance Monitoring Jobs with attribute-based filter ... Test objective: The objective is to test the retrieval of VNF performance monitoring jobs using attribute-based filter, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued attribute-based filter ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -40,7 +41,7 @@ GET all VNF Performance Monitoring Jobs with all_fields attribute selector ... Test title: GET all VNF Performance Monitoring Jobs with all_fields attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs all_fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued all_fileds selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 4.3.3.2.1, 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 4.3.3.2.1, 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -54,7 +55,7 @@ GET all VNF Performance Monitoring Jobs with exclude_default attribute selector ... Test title: GET all VNF Performance Monitoring Jobs with exclude_default attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs exclude_default attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued exclude_default selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 4.3.3.2.1, 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 4.3.3.2.1, 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -68,7 +69,7 @@ GET all VNF Performance Monitoring Jobs with fields attribute selector ... Test title: GET all VNF Performance Monitoring Jobs with fields attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued fields selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 4.3.3.2.1, 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 4.3.3.2.1, 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports the use of exclude_fields attribute selector ... Post-Conditions: none @@ -82,7 +83,7 @@ GET all VNF Performance Monitoring Jobs with exclude_fields attribute selector ... Test title: GET all VNF Performance Monitoring Jobs with exclude_fields attribute selector ... Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs exclude_fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued exclude_fields selector ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 4.3.3.2.1, 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 4.3.3.2.1, 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: The VNFM supports the use of exclude_fields attribute selector ... Post-Conditions: none @@ -96,7 +97,7 @@ GET VNF Performance Monitoring Jobs with invalid attribute-based filter ... Test title: GET VNF Performance Monitoring Jobs with invalid attribute-based filter ... Test objective: The objective is to test that the retrieval of VNF performance monitoring jobs fails when using invalid attribute-based filter, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -109,7 +110,7 @@ GET VNF Performance Monitoring Jobs with invalid resource endpoint ... Test title: GET VNF Performance Monitoring Jobs with invalid resource endpoint ... Test objective: The objective is to test that the retrieval of VNF performance monitoring jobs fails when using invalid resource endpoint, and perform the JSON schema validation of the failed operation HTTP response ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: none @@ -122,7 +123,7 @@ Create new VNF Performance Monitoring Job ... Test title: Create a new VNF Performance Monitoring Job ... Test objective: The objective is to test the creation of a new VNF performance monitoring job and perform the JSON schema validation of the returned job data structure ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 6.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.2.3.1 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VNFM ... Applicability: none ... Post-Conditions: The VNF Performance Job is successfully created on the VNFM @@ -136,7 +137,7 @@ PUT all VNF Performance Monitoring Jobs - Method not implemented ... Test title: PUT all VNF Performance Monitoring Jobs - Method not implemented ... Test objective: The objective is to test that PUT method is not allowed to modify VNF Performance Monitoring Jobs ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 6.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -148,7 +149,7 @@ PATCH all VNF Performance Monitoring Jobs - (Method not implemented) ... Test title: PATCH all VNF Performance Monitoring Jobs - Method not implemented ... Test objective: The objective is to test that PATCH method is not allowed to update VNF Performance Monitoring Jobs ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 6.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -160,7 +161,7 @@ DELETE all VNF Performance Monitoring Jobs - Method not implemented ... Test title: DELETE all VNF Performance Monitoring Jobs - Method not implemented ... Test objective: The objective is to test that DELETE method is not allowed to update VNF Performance Monitoring Jobs ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. - ... Reference: clause 6.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.4.1 + ... Reference: Clause 6.4.2.3.3 - ETSI GS NFV-SOL 002 [2] v2.6.1 ... Config ID: Config_prod_VE ... Applicability: none ... Post-Conditions: none @@ -168,6 +169,33 @@ DELETE all VNF Performance Monitoring Jobs - Method not implemented Check HTTP Response Status Code Is 405 Check Postcondition VNF Performance Monitoring Jobs Exist +GET VNF Performance Monitoring Jobs to get Paged Response + [Documentation] Test ID: 6.3.3.1.13 + ... Test title: GET VNF Performance Monitoring Jobs to get Paged Response + ... Test objective: The objective is to test the retrieval of VNF performance monitoring jobs to get Paged response. + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET all VNF Performance Monitoring Jobs + Check HTTP Response Status Code Is 200 + Check LINK in Header + +GET VNF Performance Monitoring Jobs for Bad Request Response too big + [Documentation] Test ID: 6.3.3.1.14 + ... Test title: GET VNF Performance Monitoring Jobs for Bad Request Response too big + ... Test objective: The objective is to test that GET method fail retrieving status information about VNF Performance Monitoring when Response is too big, and perform the JSON schema validation of the failed operation HTTP response + ... Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF. + ... Reference: Clause 6.4.2.3.2 - ETSI GS NFV-SOL 002 [2] v2.6.1 + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + GET all VNF Performance Monitoring Jobs + Check HTTP Response Status Code Is 400 + Check HTTP Response Body Json Schema Is ProblemDetails + + *** Keywords *** GET all VNF Performance Monitoring Jobs Log Trying to get all PM Jobs present in the VNFM @@ -324,7 +352,8 @@ Check HTTP Response Body Matches all_fields selector Check HTTP Response Body Matches filter Log Checking that attribute-based filter is matched - #todo + @{words} = Split String ${POS_FILTER} ,${SEPERATOR} + Should Be Equal As Strings ${response['body'][0]['objectInstanceIds']} @{words}[1] Check HTTP Response Body Does Not Contain reports Log Checking that field element is missing @@ -334,8 +363,7 @@ Check HTTP Response Body Does Not Contain reports Check HTTP Response Status Code Is [Arguments] ${expected_status} - ${status}= Convert To Integer ${expected_status} - Should Be Equal ${response['status']} ${status} + Should Be Equal As Strings ${response['status']} ${expected_status} Log Status code validated Check HTTP Response Status Code Is 40x @@ -3