--- swagger: "2.0" info: description: | SOL005 - NSD Management Interface IMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to and has not been approved by the ETSI NFV ISG. In case of discrepancies the published ETSI Group Specification takes precedence. Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis version: 2.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 title: SOL005 - NSD Management Interface termsOfService: https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/product/vmware-product-guide.pdf license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt basePath: /telco/api/nsd/v2 schemes: - https paths: /ns_descriptors: get: summary: Query information about multiple NS descriptor resources. description: | The GET method queries information about multiple NS descriptor resources. parameters: - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: filter in: query description: | Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV-SOL 013. The NFVO shall support receiving this filtering parameter as part of the URI query string. The OSS/BSS may supply this parameter. All attribute names that appear in the NsdInfo and in data types referenced from it shall be supported by the NFVO in the filter expression. required: false type: string - name: all_fields in: query description: | Include all complex attributes in the response. See clause 5.3 of ETSI GS NFV SOL 013 for details. The NFVO shall support this parameter. required: false type: string - name: fields in: query description: | Complex attributes to be included into the response. See clause 5.3 of ETSI GS NFV SOL 013 for details. The NFVO should support this parameter. required: false type: string - name: exclude_fields in: query description: | Complex attributes to be excluded from the response. See clause 5.3 of ETSI GS NFV SOL 013 for details. The NFVO should support this parameter. required: false type: string - name: exclude_default in: query description: | Indicates to exclude the following complex attributes from the response. See clause 5.3 of ETSI GS NFV SOL 013 for details. The VNFM shall support this parameter. The following attributes shall be excluded from the NsdInfo structure in the response body if this parameter is provided, or none of the parameters "all_fields," "fields", "exclude_fields", "exclude_default" are provided: - userDefinedData - onboardingFailureDetails required: false type: string - name: nextpage_opaque_marker in: query description: | Marker to obtain the next page of a paged response. Shall be supported by the NFVO if the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource. required: false type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. Reference: IETF RFC 7231. required: true type: string responses: "200": description: | 200 OK Shall be returned when information about zero or more NS descriptors has been queried successfully. The response body shall contain in an array the representations of zero or more NS descriptors, as defined in clause 5.5.2.2. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. Link: type: string description: | Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. schema: type: array items: $ref: '#/definitions/NsdInfo' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' post: summary: Create a new NS descriptor resource. description: | The POST method is used to create a new NS descriptor resource. parameters: - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. Reference: IETF RFC 7231. required: true type: string - name: Content-Type in: header description: | The MIME type of the body of the request. Reference: IETF RFC 7231. required: true type: string - in: body name: CreateNsdInfoRequest required: true schema: $ref: '#/definitions/CreateNsdInfoRequest' responses: "201": description: | 201 CREATED Shall be returned when a new "Individual NS descriptor" resource and the associated NS descriptor identifier has been created successfully. The response body shall contain a representation of the created NS descriptor resource, as defined in clause 5.5.2.2. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created NS descriptor resource. headers: Content-Type: type: string description: | The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/NsdInfo' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /ns_descriptors/{nsdInfoId}: get: summary: Read information about an individual NS descriptor resource. description: | The GET method reads information about an individual NS descriptor. parameters: - name: nsdInfoId in: path description: | Identifier of the individual NS descriptor resource. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. Reference: IETF RFC 7231. required: true type: string responses: "200": description: | 200 OK Shall be returned when information about the individual NS descriptor has been read successfully. The response body shall contain a representation of the individual NS descriptor, as defined in clause 5.5.2.2. headers: Content-Type: type: string description: | The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/NsdInfo' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' delete: summary: Delete an individual NS descriptor resource. description: | The DELETE method deletes an individual NS descriptor resource. An individual NS descriptor resource can only be deleted when there is no NS instance using it (i.e. usageState = NOT_IN_USE) and has been disabled already (i.e. operationalState = DISABLED). Otherwise, the DELETE method shall fail. parameters: - name: nsdInfoId in: path description: | Identifier of the individual NS descriptor resource. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string responses: "204": description: | 204 NO CONTENT Shall be returned when the operation has completed successfully. The response body shall be empty. headers: WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' patch: summary: Modify the operational state and/or the user defined data of an individual NS descriptor resource. description: | The PATCH method modifies the operational state and/or user defined data of an individual NS descriptor resource. This method can be used to: 1) Enable a previously disabled individual NS descriptor resource, allowing again its use for instantiation of new network service with this descriptor. The usage state (i.e. "IN_USE/NOT_IN_USE") shall not change as a result. 2) Disable a previously enabled individual NS descriptor resource, preventing any further use for instantiation of new network service(s) with this descriptor. The usage state (i.e. "IN_USE/NOT_IN_USE") shall not change as a result. 3) Modify the user defined data of an individual NS descriptor resource. parameters: - name: nsdInfoId in: path description: | Identifier of the individual NS descriptor resource. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - in: body name: NsdInfoModifications required: true schema: $ref: '#/definitions/NsdInfoModifications' - name: Content-Type in: header description: | The MIME type of the body of the request. Reference: IETF RFC 7231. required: true type: string responses: "200": description: | 200 OK Shall be returned when the operation has been accepted and completed successfully. The response body shall contain attribute modifications for an 'Individual NS Descriptor' resource (see clause 5.5.2.6). headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/NsdInfoModifications' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "412": description: | 412 PRECONDITION FAILED Error: A precondition given in an HTTP request header is not fulfilled. Typically, this is due to an ETag mismatch, indicating that the resource was modified by another entity. The response body should contain a ProblemDetails structure, in which the "detail" attribute should convey more information about the error. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /ns_descriptors/{nsdInfoId}/nsd_content: get: summary: Fetch the content of a NSD. description: "The GET method fetches the content of the NSD archive. The NSD archive is implemented as a single zip file. The content of the NSD archive is provided as onboarded, i.e. depending on the security option used, the CSAR wrapped in a ZIP archive together with an external signature is returned, as defined in clause 5.1 of ETSI GS NFV-SOL 007.\nNOTE:\tInformation about the applicable security option can be\n obtained by evaluating the \"archiveSecurityOption\"\n attribute in the \"nsdInfo\" structure.\n\nThis method shall follow the provisions specified in the T ables 5.4.4.3.2-1 and 5.4.4.3.2-2 for URI query parameters, request and response data structures, and response codes.\n" parameters: - name: nsdInfoId in: path required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. required: true type: string enum: - text/plain - application/zip - name: Content-Type in: header description: | Content-Types that are supplied in the request. required: false type: string enum: - text/plain - application/zip - name: Range in: header description: | The request may contain a "Range" HTTP header to obtain single range of bytes from the NSD archive. This can be used to continue an aborted transmission. If the Range header is present in the request and the NFVO does not support responding to range requests with a 206 response, it shall return a 200 OK response instead as defined below. required: false type: string responses: "200": description: | 200 OK Shall be returned when the content of the NSD has been read successfully. The payload body shall contain a copy of the ZIP file that contains the NSD file structure. The "Content-Type" HTTP header shall be set to "application/zip". headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "206": description: | 206 PARTIAL CONTENT headers: Content-Type: type: string description: | The MIME type of the body of the response. Content-Range: type: string description: | The Content-Range response HTTP header indicates where in a full body message a partial message belongs. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "416": description: | 416 RANGE NOT SATISFIABLE headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' put: summary: Upload the content of a NSD. description: | The PUT method is used to upload the content of an NSD archive. The NSD to be uploaded is implemented as a single ZIP file as defined in clause 5.4.4.3.2. The "Content-Type" HTTP header in the PUT request shall be set to "application/zip". This method shall follow the provisions specified in the Tables 5.4.4.3.3-1 and 5.4.4.3.3-2 for URI query parameters, request and response data structures, and response codes. consumes: - multipart/form-data parameters: - name: nsdInfoId in: path required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Content-Type in: header description: | The payload body contains a ZIP file that represents the NSD archive, as specified above. The request shall set the "Content-Type" HTTP header to "application/zip". required: true type: string enum: - application/zip - name: file in: formData description: | The payload body contains a ZIP file that represents the VNF package. The "Content-Type" HTTP header shall be set according to the type of the file, i.e. to "application/zip" for a VNF Package as defined in ETSI GS NFV-SOL 004. required: false type: file responses: "202": description: | 202 ACCEPTED Shall be returned when the NSD archive has been accepted for uploading, but the processing has not been completed. It is expected to take some time for processing (asynchronous mode). The response body shall be empty. The API consumer can track the uploading progress by receiving the "NsdOnBoardingNotification" and "NsdOnBoardingFailureNotification" from the NFVO or by reading the status of the individual NS descriptor resource using the GET method. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "204": description: | 204 NO CONTENT The NSD content successfully uploaded and validated (synchronous mode). The response body shall be empty. headers: WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /ns_descriptors/{nsdInfoId}/nsd: get: description: "The GET method reads the content of the NSD within an NSD archive. The NSD can be implemented as a single file or as a collection of multiple files. If the NSD is implemented in the form of multiple files, a ZIP file embedding these files shall be returned. If the NSD is implemented as a single file, either that file or a ZIP file embedding that file shall be returned. The selection of the format is controlled by the \"Accept\" HTTP header passed in the GET request:\n\t* If the \"Accept\" header contains only \"text/plain\" and the NSD is implemented as a single file,\n the file shall be returned; otherwise, an error message shall be returned.\n\t* If the \"Accept\" header contains only \"application/zip\", the single file or\n the multiple files that make up the NSD shall be returned embedded in a ZIP file.\n\t* If the \"Accept\" header contains both \"text/plain\" and \"application/zip\", it is up\n to the NFVO to choose the format to return for a single-file NSD; for a multi-file NSD,\n a ZIP file shall be returned.\nThe default format of the ZIP file shall be the one specified in ETSI GS NFV-SOL 007 where only the YAML files representing the NSD, and information necessary to navigate the ZIP file and to identify the file that is the entry point for parsing the NSD and (if requested) further security information are included. This means that the content of the ZIP archive shall contain the following files from the NSD archive:\n\t* TOSCA.meta (if available in the NSD archive);\n\t* the main service template (either as referenced from TOSCA.meta or available as a\n file with the extension \".yml\" or \".yaml\" from the root of the archive);\n\t* every component of the NSD referenced (recursively) from the main service template;\n\t* the related security information, if the \"include_signatures\" URI parameter is provided, as follows:\n-\tthe manifest file; -\tthe singleton certificate file in the root of the NSD archive (if available in the NSD archive); -\tthe signing certificates of the individual files included in the ZIP archive\n (if available in the NSD archive);\n-\tthe signatures of the individual files (if available in the NSD archive). This method shall follow the provisions specified in the Tables 5.4.4a.3.2-1 and 5.4.4a.3.2-2 for URI query parameters, request and response data structures, and response codes.\n" parameters: - name: nsdInfoId in: path required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: include_signatures in: query description: | If this parameter is provided, the NFVO shall include in the ZIP file the security information as specified above. This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. required: false type: string - name: Accept in: header description: | The request shall contain the appropriate entries in the "Accept" HTTP header as defined above. required: true type: string enum: - text/plain - application/zip - application/json responses: "200": description: | 200 OK Shall be returned when the content of the NSD has been read successfully. The payload body shall contain a copy of the file representing the NSD or a ZIP file that contains the file or multiple files representing the NSD, as specified above. The "Content-Type" HTTP header shall be set according to the format of the returned file. It shall be set to "text/plain" for a YAML file. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /ns_descriptors/{nsdInfoId}/manifest: get: summary: Fetch the content of the manifest in an NSD archive. description: | The GET method reads the content of the manifest file within an NSD archive. This method shall follow the provisions specified in the Tables 5.4.4b.3.2-1 and 5.4.4b.3.2-2 for URI query parameters, request and response data structures, and response codes. parameters: - name: nsdInfoId in: path description: | Identifier of the individual NS descriptor. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new NS descriptor resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. required: true type: string enum: - text/plain - application/zip - name: include_signatures in: query description: | If this parameter is provided, the NFVO shall return the manifest and related security information (signature and certificate) either in a single text file if the signature and certificate are included in the manifest file, or in a zip file containing the manifest and the certificate file, if this is provided as a separate file in the NSD archive. If this parameter is not given, the NFVO shall provide only a copy of the manifest file, as onboarded. If the security information is included in the onboarded manifest, it shall also be included in the returned copy. This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. required: false type: string responses: "200": description: "200 OK\nShall be returned when the content of the manifest file has been read successfully.\nIf the \"include_signatures\" URI query parameter was absent in the request, or if the manifest file has all security-related information embedded (i.e. there is no separate certificate file), the payload body shall contain a copy of the manifest file of the NSD archive, and the \"Content-Type\" HTTP header shall be set to \"text/plain\". If the \"include_signatures\" URI query parameter was present in the related request and the manifest file does not have all the security-related information embedded (i.e. there is a separate certificate file), the \"Content-Type\" HTTP header shall be set to \"application/zip\" and the payload body shall contain a ZIP archive which includes: -\ta copy of the manifest file of the NSD archive; -\ta copy of the related individual certificate file.\n" headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /pnf_descriptors: get: summary: Query information about multiple PNF descriptor resources. description: | "The GET method queries information about multiple PNF descriptor resources." parameters: - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: filter in: query description: | Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV-SOL 013. The NFVO shall support receiving this filtering parameter as part of the URI query string. The OSS/BSS may supply this parameter. All attribute names that appear in the PnfdInfo and in data types referenced from it shall be supported by the NFVO in the filter expression. required: false type: string - name: all_fields in: query description: | Include all complex attributes in the response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. required: false type: string - name: fields in: query description: | Complex attributes to be included into the response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. The NFVO should support this parameter. required: false type: string - name: exclude_fields in: query description: | Complex attributes to be excluded from the response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. The NFVO should support this parameter. required: false type: string - name: exclude_default in: query description: "Indicates to exclude the following complex attributes from the response. See clause 5.3 of ETSI GS NFV-SOL 013 for details. The NFVO shall support this parameter. The following attributes shall be excluded from the PnfdInfo structure in the response body if this parameter is provided, or none of the parameters \"all_fields,\" \"fields\", \"exclude_fields\", \"exclude_default\" are provided: -\tuserDefinedData -\tonboardingFailureDetails\n" required: false type: string - name: nextpage_opaque_marker in: query description: | Marker to obtain the next page of a paged response. Shall be supported by the NFVO if the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV SOL 013 for this resource. required: false type: string responses: "200": description: | 200 OK Shall be returned when information about zero or more PNF descriptors has been queried successfully. The response body shall contain in an array the representations of zero or more PNF descriptors, as defined in clause 5.5.2.5. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. Link: type: string description: | Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. schema: type: array description: | Information about zero or more PNF descriptors. The response body shall contain a representation in an array the representations of zero or more PNF descriptors, as defined in clause 5.5.2.2. If the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 4.7.2.3. items: $ref: '#/definitions/PnfdInfo' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' post: summary: Create a new PNF descriptor resource. description: | The POST method is used to create a new PNF descriptor resource parameters: - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. Reference: IETF RFC 7231. required: true type: string - name: Content-Type in: header description: | The MIME type of the body of the request. Reference: IETF RFC 7231. required: true type: string - in: body name: CreatePnfdInfoRequest required: true schema: $ref: '#/definitions/CreatePnfdInfoRequest' responses: "201": description: | 201 CREATED Shall be returned when a new "Individual PNF descriptor" resource and the associated PNF descriptor identifier has been created successfully. The response body shall contain a representation of the created PNF descriptor resource, as defined in clause 5.5.2.5. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created PNF descriptor resource. headers: Content-Type: type: string description: | The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/PnfdInfo' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /pnf_descriptors/{pnfdInfoId}: get: summary: Read an individual PNFD resource. description: | The GET method reads information about an individual PNF descriptor. parameters: - name: pnfdInfoId in: path description: | Identifier of the individual PNF descriptor resource. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. This header field shall be present if the response is expected to have a non-empty message body. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Details are specified in clause 4.5.3 of GS NFV-SOL 005. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string responses: "200": description: | 200 OK Shall be returned when information about the individual PNFD descriptor has been read successfully. The response body shall contain a representation of the individual PNF descriptor, as defined in clause 5.5.2.5. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/PnfdInfo' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' delete: summary: Delete an individual PNF descriptor resource. description: | The DELETE method deletes an individual PNF descriptor resource. An individual PNF descriptor resource can only be deleted when t here is no NS instance using it or there is NSD referencing it. To delete all PNFD versions identified by a particular value of the "pnfdInvariantId" attribute, the procedure is to first use t he GET method with filter "pnfdInvariantId" towards the PNF descriptors resource to find all versions of the PNFD. Then, he API consumer uses the DELETE method described in this clause to delete each PNFD version individually. This method shall follow the provisions specified in the Tables 5.4.6.3.5-1 and 5.4.6.3.5-2 for URI query parameters, request and response data structures, and response codes. parameters: - name: pnfdInfoId in: path description: | Identifier of the individual PNF descriptor resource. required: true type: string responses: "204": description: | 204 NO CONTENT Shall be returned when the operation has completed successfully. The response body shall be empty. headers: WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' patch: summary: Modify the user defined data of an individual PNF descriptor resource. description: | The PATCH method modifies the user defined data of an individual PNF descriptor resource. parameters: - name: pnfdInfoId in: path description: | Identifier of the individual PNF descriptor resource. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. This header field shall be present if the response is expected to have a non-empty message body. required: true type: string - name: Content-Type in: header description: | The MIME type of the body of the request. This header field shall be present if the request has a non-empty message body. required: true type: string - in: body name: PnfdInfoModifications required: true schema: $ref: '#/definitions/PnfdInfoModifications' responses: "200": description: | 200 OK Shall be returned when the operation has been accepted and completed successfully. The response body shall contain attribute modifications for an 'Individual PNF Descriptor' resource (see clause 5.5.2.4). headers: Content-Type: type: string description: | The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/PnfdInfoModifications' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "412": description: | 412 PRECONDITION FAILED Error: A precondition given in an HTTP request header is not fulfilled. Typically, this is due to an ETag mismatch, indicating that the resource was modified by another entity. The response body should contain a ProblemDetails structure, in which the "detail" attribute should convey more information about the error. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /pnf_descriptors/{pnfdInfoId}/pnfd_content: get: summary: Fetch the content of a PNFD. description: "The GET method fetches the content of the PNFD archive. The content of the PNFD archive is provided as onboarded, i.e. depending on the security option used, the CSAR or the CSAR wrapped in a ZIP archive together with an external signature is returned, as defined in clause 5.1 of ETSI GS NFV-SOL 004.\nNOTE:\tInformation about the applicable security option can be obtained by evaluating the \"archiveSecurityOption\" attribute in the \"pnfdInfo\" structure.\nThis method shall follow the provisions specified in the Tables 5.4.7.3.2-1 and 5.4.7.3.2-2 for URI query parameters, request and response data structures, and response codes.\n" parameters: - name: pnfdInfoId in: path description: | Identifier of the individual PNF descriptor. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new PNF descriptor resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235 required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. required: true type: string enum: - text/plain - name: Range in: header description: | The request may contain a "Range" HTTP header to obtain single range of bytes from the PNFD archive. This can be used to continue an aborted transmission. If the NFVO does not support range requests, the NFVO shall ignore the "Range" header, process the GET request, and return the whole PNFD archive with a 200 OK response (rather than returning a 4xx error status code). required: false type: string responses: "200": description: | 200 OK Shall be returned when the content of the PNFD archive has been read successfully. The payload body shall contain a copy of the PNFD archive The "Content-Type" HTTP header shall be set to "application/zip". headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "206": description: | 206 PARTIAL CONTENT If the NFVO supports range requests, this response shall be returned when a single consecutive byte range from the content of the PNFD archive has been read successfully according to the request. The response body shall contain the requested part of the PNFD archive. The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Content-Type: type: string description: | The MIME type of the body of the response. Content-Range: type: string description: | The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "416": description: | 416 RANGE NOT SATISFIABLE headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' put: summary: Upload the content of a PNFD. description: | The PUT method is used to upload the content of a PNFD archive. This resource represents the content of the individual PNF descriptor, i.e. PNFD content. The client can use this resource to upload and download the content of the PNFD. consumes: - multipart/form-data parameters: - name: pnfdInfoId in: path description: | Identifier of the individual PNF descriptor. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new PNF descriptor resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235 required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Content-Type in: header description: | The payload body contains a ZIP file that represents the NSD archive, as specified above. The request shall set the "Content-Type" HTTP header to "application/zip". required: true type: string enum: - application/zip - name: file in: formData description: | The payload body contains a ZIP file that represents the VNF package. The "Content-Type" HTTP header shall be set according to the type of the file, i.e. to "application/zip" for a PNF Package as defined in ETSI GS NFV-SOL 004. required: false type: file responses: "202": description: | 202 ACCEPTED Shall be returned when the PNFD archive has been accepted for uploading, but the processing has not been completed. It is expected to take some time for processing (asynchronous mode). The response body shall be empty. The API consumer can track the uploading progress by receiving the "PnfdOnBoardingNotification" and "PnfdOnBoardingFailureNotification" from the NFVO or by reading the status of the individual PNF descriptor resource using the GET method. headers: WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "204": description: | 204 NO CONTENT Shall be returned when the PNFD archive content has been uploaded and validated successfully. The response body shall be empty. headers: WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /pnf_descriptors/{pnfdInfoId}/pnfd: get: description: "The GET method reads the content of the PNFD within a PNFD archive. The PNFD can be implemented as a single file or as a collection of multiple files. If the PNFD is implemented in the form of multiple files, a ZIP file embedding these files shall be returned. If the PNFD is implemented as a single file, either that file or a ZIP file embedding that file shall be returned. The selection of the format is controlled by the \"Accept\" HTTP header passed in the GET request:\n\t* If the \"Accept\" header contains only \"text/plain\" and the PNFD is\n implemented as a single file, the file shall be returned; otherwise,\n an error message shall be returned.\n\t* If the \"Accept\" header contains only \"application/zip\", the single\n file or the multiple files that make up the PNFD shall be returned\n embedded in a ZIP file.\n\t* If the \"Accept\" header contains both \"text/plain\" and \"application/zip\",\n it is up to the NFVO to choose the format to return for a single-file PNFD;\n for a multi-file PNFD, a ZIP file shall be returned.\nThe default format of the ZIP file shall be the one specified in ETSI GS NFV-SOL 004 where only the YAML files representing the PNFD, and information necessary to navigate the ZIP file and to identify the file that is the entry point for parsing the PNFD and (if requested) further security information are included. This means that the content of the ZIP archive shall contain the following files from the PNFD archive:\n\t* TOSCA.meta (if available in the PNFD archive);\n\t* the main service template (either as referenced from TOSCA.meta or\n available as a file with the extension \".yml\" or \".yaml\" from the\n root of the archive);\n\t* every component of the PNFD referenced (recursively) from the main\n service template;\n\t* the related security information, if the \"include_signatures\" URI\n parameter is provided, as follows:\n -\tthe manifest file;\n -\tthe singleton certificate file in the root of the PNFD archive\n (if available in the PNFD archive);\n -\tthe signing certificates of the individual files included in the\n ZIP archive (if available in the PNFD archive);\n -\tthe signatures of the individual files (if available in the PNFD archive).\nThis method shall follow the provisions specified in the Tables 5.4.7a.3.2-1 and 5.4.7a.3.2-2 for URI query parameters, request and response data structures, and response codes.\n" parameters: - name: pnfdInfoId in: path description: | Identifier of the individual PNF descriptor. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new PNF descriptor resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235 required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. required: true type: string enum: - text/plain - name: Range in: header description: | The request may contain a "Range" HTTP header to obtain single range of bytes from the PNFD archive. This can be used to continue an aborted transmission. If the NFVO does not support range requests, the NFVO shall ignore the "Range" header, process the GET request, and return the whole PNFD archive with a 200 OK response (rather than returning a 4xx error status code). required: false type: string - name: include_signatures in: query description: | If this parameter is provided, the NFVO shall include in the ZIP file the security information as specified above. This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. required: false type: string responses: "200": description: | 200 OK Shall be returned when the content of the PNFD has been read successfully. The payload body shall contain a copy of the file representing the PNFD or a ZIP file that contains the file or multiple files representing the PNFD, as specified above. The "Content-Type" HTTP header shall be set according to the format of the returned file. It shall be set to "text/plain" for a YAML file. headers: Content-Type: type: string description: | The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /pnf_descriptors/{pnfdInfoId}/manifest: get: description: | The GET method reads the content of the manifest file within a PNFD archive. This method shall follow the provisions specified in the Tables 5.4.7b.3.2-1 and 5.4.7b.3.2-2 for URI query parameters, request and response data structures, and response codes. parameters: - name: pnfdInfoId in: path description: | Identifier of the individual PNF descriptor. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new PNF descriptor resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235 required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. required: true type: string enum: - text/plain - application/zip - name: include_signatures in: query description: | If this parameter is provided, the NFVO shall return the manifest and related security information (signature and certificate) either in a single text file if the signature and certificate are included in the manifest file, or in a zip file containing the manifest and the certificate file, if this is provided as a separate file in the PNFD archive. If this parameter is not given, the NFVO shall provide only a copy of the manifest file, as onboarded. If the security information is included in the onboarded manifest, it shall also be included in the returned copy. This URI query parameter is a flag, i.e. it shall have no value. The NFVO shall support this parameter. required: false type: string responses: "200": description: "Shall be returned when the content of the manifest file has been read successfully. If the \"include_signatures\" URI query parameter was absent in the request, or if the manifest file has all security-related information embedded (i.e. there is no separate certificate file), the payload body shall contain a copy of the manifest file of the PNFD archive, and the \"Content-Type\" HTTP header shall be set to \"text/plain\". If the \"include_signatures\" URI query parameter was present in the related request and the manifest file does not have all the security-related information embedded (i.e. there is a separate certificate file), the \"Content-Type\" HTTP header shall be set to \"application/zip\" and the payload body shall contain a ZIP archive which includes: -\ta copy of the manifest file of the PNFD archive; -\ta copy of the related individual certificate file.\n" headers: Content-Type: type: string description: | The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. enum: - text/plain - application/zip WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "409": description: | 409 CONFLICT headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /subscriptions: get: summary: Query multiple subscriptions. description: | TThe 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. This method shall support the URI query parameters, request and response data structures, and response codes, as specified in the Tables 5.4.8.3.2-1 and 5.4.8.3.2-2. parameters: - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: filter in: query description: | AAttribute filtering expression according to clause 5.2 of ETSI GS NFV SOL 013. The NFVO shall support receiving this parameter as part of the URI query string. the OSS/BSS may supply this parameter. All attribute names that appear in the NsdmSubscription and in data types referenced from it shall be supported by the NFVO in the filter expression. required: false type: string - name: nextpage_opaque_marker in: query description: | Marker to obtain the next page of a paged response. Shall be supported by the NFVO if the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource. required: false type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. Reference: IETF RFC 7231. required: true type: string responses: "200": description: | 200 OK Shall be returned when the list of subscriptions has been queried successfully. The response body shall contain in an array the representations of all active subscriptions of the functional block that invokes the method, i.e. zero or more representations of NSD management subscriptions as defined in clause 5.5.2.8. If the "filter" URI parameter was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clause 5.2.2 of ETSI GS NFV-SOL 013. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV SOL 013. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. Link: type: string description: | Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. schema: type: array description: | The list of subscriptions was queried successfully. The response body shall contain in an array the representations of all active subscriptions of the functional block that invokes the method, i.e., zero or more representations of NSD management subscriptions as defined in clause 5.5.2.8. If the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 4.7.2.3. items: $ref: '#/definitions/NsdmSubscription' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' post: summary: Subscribe to NSD and PNFD change notifications. description: | The POST method creates a new subscription. This method shall support the URI query parameters, request and response data structures, and response codes, as specified in the Tables 5.4.8.3.1-1 and 5.4.8.3.1-2. Creation of two subscription resources with the same callback URI and the same filter can result in performance degradation and will provide duplicates of notifications to the OSS, and might make sense only in very rare use cases. Consequently, the NFVO may either allow creating a subscription resource if another subscription resource with the same filter and callback URI already exists (in which case it shall return the "201 Created" response code), or may decide to not create a duplicate subscription resource (in which case it shall return a "303 See Other" response code referencing the existing subscription resource with the same filter and callbackUricallback URI). parameters: - name: Authorization in: header description: | The authorization token for the request. Reference: IETF RFC 7235. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. Reference: IETF RFC 7231. required: true type: string - name: Content-Type in: header description: | The MIME type of the body of the request. Reference: IETF RFC 7231. required: true type: string - in: body name: NsdmSubscriptionRequest required: true schema: $ref: '#/definitions/NsdmSubscriptionRequest' responses: "201": description: | 201 CREATED Shall be returned when the subscription has been created successfully. A representation of the created "Individual subscription" resource shall be returned in the response body, as defined in clause 5.5.2.8. The HTTP response shall include a "Location:" HTTP header that points to the created "Individual subscription" resource. headers: Content-Type: type: string description: | The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/NsdmSubscription' "303": description: | 303 SEE OTHER headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "422": description: | 422 UNPROCESSABLE ENTITY If the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data cannot be processed (e.g. because it fails validation against a schema), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. This error response code is only applicable for methods that have a request body. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' /subscriptions/{subscriptionId}: get: summary: Read an individual subscription resource. description: | This resource represents an individual subscription. It can be used by the client to read and to terminate a subscription to notifications related to NSD management. The GET method retrieves information about a subscription by reading an individual subscription resource. This resource represents an individual subscription. It can be used by the client to read and to terminate a subscription to notifications related to NSD management. parameters: - name: subscriptionId in: path 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. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Details are specified in clause 4.5.3 of GS NFV-SOL 005. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string - name: Accept in: header description: | Content-Types that are acceptable for the response. This header field shall be present if the response is expected to have a non-empty message body. required: true type: string responses: "200": description: | 200 OK Shall be returned when information about an individual subscription has been read successfully. The response body shall contain a representation of the subscription resource. headers: Content-Type: type: string description: | The MIME type of the body of the response. This header field shall be present if the response has a non-empty message body. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/NsdmSubscription' "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' delete: summary: Terminate Subscription description: "This resource represents an individual subscription. It can be used by the client to read and to terminate a subscription to notifications related to NSD management.\nThe DELETE method terminates an individual subscription. This method shall support the URI query parameters, request and response data structures, and response codes, as specified in the Table 5.4.9.3.3-2. \n" parameters: - name: subscriptionId in: path 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. required: true type: string - name: Authorization in: header description: | The authorization token for the request. Details are specified in clause 4.5.3 of GS NFV-SOL 005. required: false type: string - name: Version in: header description: | Version of the API requested to use when responding to this request. required: true type: string responses: "204": description: | 204 NO CONTENT Shall be returned when the "Individual subscription" resource has been deleted successfully. The response body shall be empty. headers: WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. "400": description: | 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect query parameters or the payload body contains a syntactically incorrect data structure), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more information about the source of the problem. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "401": description: | 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be provided. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "403": description: | 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, and may indicate how to solve it. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "404": description: | 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response contains a 200 OK response code and a payload body with an empty array. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "405": description: | 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "406": description: | 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "500": description: | 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "503": description: | 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' "504": description: | 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code. headers: Content-Type: type: string description: The MIME type of the body of the response. WWW-Authenticate: type: string 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. Version: type: string description: | Version of the API used in the response. schema: $ref: '#/definitions/ProblemDetails' securityDefinitions: x-hm-authorization: description: Obtained from /hybridity/api/session type: apiKey name: x-hm-authorization in: header definitions: NsdInfo: type: object required: - _links - id - nsdOnboardingState - nsdOperationalState - nsdUsageState properties: id: description: | Identifier of the on boarded individual NS descriptor resource. This identifier is allocated by the NFVO. $ref: '#/definitions/Identifier' nsdId: description: | This identifier, which is allocated by the NSD designer, identifies the NSD in a globally unique way. It is copied from the NSD content and shall be present after the NSD content is on-boarded. $ref: '#/definitions/Identifier' nsdName: type: string description: | Name of the on boarded NSD. This information is copied from the NSD content and shall be present after the NSD content is on-boarded. nsdVersion: description: | Version of the on-boarded NSD. This information is copied from the NSD content and shall be present after the NSD content is on-boarded. $ref: '#/definitions/Version' nsdDesigner: type: string description: | Designer of the on-boarded NSD. This information is copied from the NSD content and shall be present after the NSD content is on-boarded. nsdInvariantId: description: | This identifier, which is allocated by the NSD designer, identifies an NSD in a version independent manner. This information is copied from the NSD content and shall be present after the NSD content is on-boarded. $ref: '#/definitions/Identifier' vnfPkgIds: type: array description: | Identifies the VNF package for the VNFD referenced by the on-boarded NS descriptor resource. items: $ref: '#/definitions/Identifier' pnfdInfoIds: type: array description: | Identifies the PnfdInfo element for the PNFD referenced by the on-boarded NS descriptor resource. items: $ref: '#/definitions/Identifier' nestedNsdInfoIds: type: array description: | Identifies the NsdInfo element for the nested NSD referenced by the on-boarded NS descriptor resource. items: $ref: '#/definitions/Identifier' archiveSecurityOption: type: string description: | Signals the security option used by the NSD archive as defined in clause 5.1 of ETSI GS NFV SOL 007. Valid values: OPTION_1, OPTION_2 enum: - OPTION_1 - OPTION_2 signingCertificate: description: | The singleton signing certificate if it is included as a file in the NSD archive. $ref: '#/definitions/String' artifacts: type: array description: | Information about NSD archive artifacts contained in the NSD archive. This attribute shall not be present before the NSD archive content is on-boarded. Otherwise, this attribute shall be present if the NSD archive contains artifacts. items: $ref: '#/definitions/NsdArchiveArtifactInfo' nsdOnboardingState: description: | On boarding state of the individual NS descriptor resource. $ref: '#/definitions/NsdOnboardingStateType' onboardingFailureDetails: description: | Failure details of current on boarding procedure. See clause 6.3 of ETSI GS NFV-SOL 013 for the details of "ProblemDetails" structure. It shall be present when the "nsdOnboardingState" attribute is "ERROR", i.e. the uploading or processing has failed in NFVO, unless it has been requested to be excluded via an attribute selector. $ref: '#/definitions/ProblemDetails' nsdOperationalState: description: | Operational state of the individual NS descriptor resource. This attribute can be modified with the PATCH method. $ref: '#/definitions/NsdOperationalStateType' nsdUsageState: description: | Usage state of the individual NS descriptor resource. $ref: '#/definitions/NsdUsageStateType' userDefinedData: $ref: '#/definitions/UserDefinedDataType' _links: $ref: '#/definitions/NsdInfo__links' description: | This type represents a response for the query NSD operation. Identifier: type: string description: | An identifier with the intention of being globally unique. Version: type: string description: | A Version. Representation: string of variable length. String: type: string description: | A string as defined in IETF RFC 8259. NsdArchiveArtifactInfo: type: object required: - artifactPath - checksum properties: artifactPath: description: | Path in the NSD archive, which identifies the artifact and also allows to access a copy of the artifact. $ref: '#/definitions/String' checksum: description: | Checksum of the artifact file. $ref: '#/definitions/Checksum' metadata: description: | The metadata of the artifact that are available in the NSD Archive, such as Content type, size, creation date, etc. $ref: '#/definitions/KeyValuePairs' description: | This type represents an artifact contained in an NSD archive. It shall comply with provisions defined in Table 5.5.3.5-1. Checksum: type: object required: - algorithm - hash properties: algorithm: type: string description: | Name of the algorithm used to generate the checksum, as defined in ETSI GS NFV-SOL 004 [5]. For example, SHA-256, SHA-512. hash: type: string description: | The hexadecimal value of the checksum. description: | This type represents the checksum of a VNF package or an artifact file. KeyValuePairs: 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. additionalProperties: type: string NsdOnboardingStateType: type: string description: | The enumeration NsdOnboardingStateType shall comply with the provisions defined in Table 5.5.4.5-1 of GS NFV-SOL 005. It indicates the on-boarding state of the NSD. CREATED = The NSD information object has been created. UPLOADING = The associated NSD content is being uploaded. PROCESSING = The associated NSD content is being processed, e.g. validation. ONBOARDED = The associated NSD content has been on-boarded. ERROR = There was an error during upload or processing of the NSD content. enum: - CREATED - UPLOADING - PROCESSING - ONBOARDED - ERROR ProblemDetails: type: object required: - detail - status properties: type: type: string format: URI description: | A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be "about:blank". 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). 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. detail: type: string description: | A human-readable explanation specific to this occurrence of the problem. instance: type: string format: URI description: | A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced. description: | The definition of the general "ProblemDetails" data structure from IETF RFC 7807 [19] is reproduced in this structure. Compared to the general framework defined in IETF RFC 7807 [19], the "status" and "detail" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the "ProblemDetails" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19]. NsdOperationalStateType: type: string description: | The enumeration NsdOperationalStateType shall comply with the provisions defined in Table 5.5.4.3-1 of GS NFV_SOL 005. It indicates the operational state of the resource. ENABLED = The operational state of the resource is enabled. DISABLED = The operational state of the resource is disabled. enum: - ENABLED - DISABLED NsdUsageStateType: type: string description: | The enumeration NsdUsageStateType shall comply with the provisions defined in Table 5.5.4.4-1 of GS NFV-SOL 005. It indicates the usage state of the resource.IN_USE = The resource is in use.NOT_IN_USE = The resource is not-in-use. enum: - IN_USE - NOT_IN_USE UserDefinedDataType: type: object required: - name properties: name: type: string description: name in case of ns creation tags: type: array items: $ref: '#/definitions/UserDefinedDataType_tags' lastUpdated: type: string lastUpdateEnterprise: type: string lastUpdateOrganization: type: string lastUpdateUser: type: string creationDate: type: string creationEnterprise: type: string creationOrganization: type: string creationUser: type: string description: | Modifications of the userDefinedData attribute in NsdInfo data type. See note. If present, these modifications shall be applied according to the rules of JSON Merge PATCH (see IETF RFC 7396 [25]). NOTE- At least one of the attributes - nsdOperationalState and userDefinedData - shall be present. Link: type: object required: - href properties: href: type: string format: url description: | URI of a resource referenced from a notification. Should be an absolute URI (i.e. a URI that contains {apiRoot}), however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) if the {apiRoot} information is not available. description: | This type represents a link to a resource. CreateNsdInfoRequest: type: object properties: userDefinedData: $ref: '#/definitions/UserDefinedDataType' description: | This type creates a completely new NS descriptor resource. NsdInfoModifications: type: object properties: nsdOperationalState: $ref: '#/definitions/NsdOperationalStateType' userDefinedData: $ref: '#/definitions/UserDefinedDataType' description: | This type represents attribute modifications for an individual NS descriptor resource based on the NsdInfo data type. The attributes of NsdInfo that can be modified are included in the NsdInfoModifications data type.NOTE: At least one of the attributes - nsdOperationalState and userDefinedData - shall be present. PnfdInfo: type: object required: - _links - id - pnfdOnboardingState - pnfdUsageState properties: id: description: | Identifier of the on-boarded individual PNF descriptor resource. This identifier is allocated by the NFVO. $ref: '#/definitions/Identifier' pnfdId: description: | This identifier, which is managed by the PNFD designer, identifies the PNFD in a globally unique way. It is copied from the PNFD content and shall be present after the PNFD content is on-boarded. $ref: '#/definitions/Identifier' pnfdName: type: string description: | Name of the on-boarded PNFD. This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded. pnfdVersion: $ref: '#/definitions/Version' pnfdProvider: type: string description: | Provider of the on-boarded PNFD. This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded. pnfdInvariantId: description: | Identifies a PNFD in a version independent manner. This attribute is invariant across versions of PNFD. $ref: '#/definitions/Identifier' archiveSecurityOption: type: string description: | Signals the security option used by the PNFD archive as defined in clause 5.1 of ETSI GS NFV SOL 004. Valid values: OPTION_1, OPTION_2 enum: - OPTION_1 - OPTION_2 signingCertificate: description: | The singleton signing certificate if it is included as a file in the PNFD archive. $ref: '#/definitions/String' artifacts: type: array description: | Information about PNFD archive artifacts contained in the PNFD archive. This attribute shall not be present before the PNFD archive content is on-boarded. Otherwise, this attribute shall be present if the PNFD archive contains artifacts. items: $ref: '#/definitions/PnfdArchiveArtifactInfo' pnfdOnboardingState: description: | On-boarding state of the individual PNF descriptor resource. $ref: '#/definitions/PnfdOnboardingStateType' onboardingFailureDetails: description: | Failure details of current on-boarding procedure. See clause 6.3 of ETSI GS NFV-SOL 013 for the details of "ProblemDetails" structure. It shall be present when the pnfdOnboardingState attribute is "ERROR", i.e. the uploading or processing has failed in the NFVO, unless it has been requested to be excluded via an attribute selector. $ref: '#/definitions/ProblemDetails' pnfdUsageState: description: | Usage state of the individual PNF descriptor resource. $ref: '#/definitions/PnfdUsageStateType' userDefinedData: description: | User defined data for the individual PNF descriptor resource. This attribute can be modified with the PATCH method. $ref: '#/definitions/KeyValuePairs' _links: $ref: '#/definitions/PnfdInfo__links' description: | This type represents a response for the query PNFD operation. PnfdArchiveArtifactInfo: type: object required: - artifactPath - checksum properties: artifactPath: description: | Path in the PNFD archive, which identifies the artifact and also allows to access a copy of the artifact. $ref: '#/definitions/String' checksum: description: | Checksum of the artifact file. $ref: '#/definitions/Checksum' nonManoArtifactSetId: description: | Non-MANO artifact set identifier of the non-MANO artifact set to which the artifact belongs, as defined in clause 4.3.7 of ETSI GS NFV-SOL 004. Shall be provided if the artifact is a non-MANO artifact, and shall be omitted otherwise. $ref: '#/definitions/String' metadata: description: | The metadata of the artifact that are available in the PNFD Archive, such as Content type, size, creation date, etc. $ref: '#/definitions/KeyValuePairs' description: | This type represents an artifact contained in a PNFD archive. It shall comply with provisions defined in Table 5.5.3.6-1. PnfdOnboardingStateType: type: string description: | The enumeration PnfdOnboardingStateType shall comply with the provisions defined in Table 5.5.4.6-1 of GS-NFV SOL005. It indicates the on-boarding state of the individual PNF descriptor resource. CREATED = The PNF descriptor resource has been created. UPLOADING = The associated PNFD content is being uploaded. PROCESSING = The associated PNFD content is being processed, e.g. validation. ONBOARDED = The associated PNFD content has been on-boarded. ERROR = There was an error during upload or processing of the associated PNFD content. enum: - CREATED - UPLOADING - PROCESSING - ONBOARDING - ERROR PnfdUsageStateType: type: string description: | The enumeration PnfdUsageStateType shall comply with the provisions defined in Table 5.5.4.7-1 of GS NFV-SOL005. It indicates the usage state of the resource.IN-USE = The resource is in use.NOT_IN_USE = The resource is not-in-use. enum: - IN_USE - NOT_IN_USE CreatePnfdInfoRequest: type: object properties: userDefinedData: $ref: '#/definitions/KeyValuePairs' description: | User-defined data for the PNF descriptor resource to be created. It shall be present when the user defined data is set for the individual PNF descriptor resource to be created. PnfdInfoModifications: type: object required: - userDefinedData properties: userDefinedData: $ref: '#/definitions/KeyValuePairs' description: | This type represents attribute modifications for an individual PNF descriptor resource based on the "PnfdInfo" data type. The attributes of "PnfdInfo" that can be modified are included in the "PnfdInfoModifications" data type. NsdmSubscription: type: object required: - _links - callbackUri - id properties: id: description: | Identifier of this subscription resource. $ref: '#/definitions/Identifier' filter: description: | Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter. $ref: '#/definitions/NsdmNotificationsFilter' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: '#/definitions/Uri' _links: $ref: '#/definitions/NsdmSubscription__links' description: | This type represents a subscription related to notifications about NSD management. NsdmNotificationsFilter: type: object properties: notificationTypes: type: array description: | Match particular notification types. Permitted values: NsdOnBoardingNotification, NsdOnboardingFailureNotification, NsdChangeNotification, NsdDeletionNotification PnfdOnBoardingNotification, PnfdOnBoardingFailureNotification, PnfdDeletionNotification. The permitted values of the "notificationTypes" ] attribute are spelled exactly as the names of the notification types to facilitate automated code generation systems. items: $ref: '#/definitions/NotificationEnumTypes' nsdInfoId: type: array description: | Match the NsdInfo identifier which is allocated by the NFVO. items: $ref: '#/definitions/Identifier' nsdId: type: array description: | Match the NSD identifier, which is allocated by the NSD designer. items: $ref: '#/definitions/Identifier' nsdName: type: array description: | Match the name of the on boarded NSD. items: $ref: '#/definitions/String' nsdVersion: type: array description: | Match the NSD version listed as part of this attribute. items: $ref: '#/definitions/Version' nsdDesigner: type: array description: | Match the NSD designer of the on-boarded NSD. items: $ref: '#/definitions/String' nsdInvariantId: type: array description: | Match the NSD invariant identifier which is allocated by the NSD designer and identifies an NSD in a version independent manner. items: $ref: '#/definitions/Identifier' vnfPkgIds: type: array description: | Match VNF packages with a package identifier listed in the attribute. items: $ref: '#/definitions/Identifier' pnfdInfoIds: type: array description: | Match the PnfdInfo identifier for the PNFD referenced by the on-boarded NSD. items: $ref: '#/definitions/Identifier' nestedNsdInfoIds: type: array description: | Match the NsdInfo identifier for the nested NSD referenced by the on-boarded NSD. items: $ref: '#/definitions/Identifier' nsdOnboardingState: type: array description: | Match particular on-boarding state of the NSD. items: $ref: '#/definitions/NsdOnboardingStateType' nsdOperationalState: type: array description: | Match particular operational state of the on-boarded NSD. items: $ref: '#/definitions/NsdOperationalStateType' nsdUsageState: type: array description: | Match particular usage state of the on-boarded NSD. items: $ref: '#/definitions/NsdUsageStateType' pnfdId: type: array description: | Match the PNFD identifier which is copied from the PNFD content. items: $ref: '#/definitions/Identifier' pnfdName: type: array description: | Match the name of the on-boarded PNFD. items: $ref: '#/definitions/String' pnfdVersion: type: array description: | Match the PNFD designer of the on-boarded PNFD. items: $ref: '#/definitions/Version' pnfdProvider: type: array description: | Match the provider of the on-boarded PNFD. items: $ref: '#/definitions/String' pnfdInvariantId: type: array description: | Match the PNFD in a version independent manner. items: $ref: '#/definitions/Identifier' pnfdOnboardingState: type: array description: | Match particular on-boarding state of the PNFD. items: $ref: '#/definitions/PnfdOnboardingStateType' pnfdUsageState: type: array description: | Match the usage state of the individual PNF descriptor resource. items: $ref: '#/definitions/PnfdUsageStateType' description: | This type represents a subscription filter related to notifications about NSD management. It shall comply with the provisions defined in Table 5.5.3.2-1 of GS NFV-SOL 005. 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). NOTE 1: The attributes "nsdId" and "nsdInfoId" are alternatives to reference to a particular NSD in a filter. They should not be used both in the same filter instance, but one alternative should be chosen. NOTE 2: The attributes "pnfdId" and "pnfdInfoId" are alternatives to reference to a particular PNFD in a filter. They should not be used both in the same filter instance, but one alternative should be chosen. NotificationEnumTypes: type: string enum: - NsdOnBoardingNotification - NsdOnboardingFailureNotification - NsdChangeNotification - NsdDeletionNotification - PnfdOnBoardingNotification - PnfdOnBoardingFailureNotification - PnfdDeletionNotification Uri: type: string format: uri description: | String formatted according to IETF RFC 3986. NsdmSubscriptionRequest: type: object required: - callbackUri properties: filter: $ref: '#/definitions/NsdmNotificationsFilter' callbackUri: type: string description: | The URI of the endpoint to send the notification to. authentication: description: | Authentication parameters to configure the use of Authorization when sending notifications corresponding to this subscription, as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. This attribute shall only be present if the subscriber requires authorization of notifications. $ref: '#/definitions/SubscriptionAuthentication' description: | This type represents a subscription request related to notifications about NSD management. SubscriptionAuthentication: type: object required: - authType properties: authType: type: array 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. items: type: string paramsBasic: $ref: '#/definitions/SubscriptionAuthentication_paramsBasic' paramsOauth2ClientCredentials: $ref: '#/definitions/SubscriptionAuthentication_paramsOauth2ClientCredentials' NsdInfo__links: type: object required: - nsd_content - self properties: self: description: | URI of this resource. $ref: '#/definitions/Link' nsd_content: description: | Link to the NSD content resource. $ref: '#/definitions/Link' description: | Links to resources related to this resource. UserDefinedDataType_tags: type: object properties: name: type: string autoCreated: type: boolean PnfdInfo__links: type: object required: - pnfd_content - self properties: self: $ref: '#/definitions/Link' pnfd_content: $ref: '#/definitions/Link' description: | Links to resources related to this resource. NsdmSubscription__links: type: object properties: self: $ref: '#/definitions/Link' description: | Links to resources related to this resource. SubscriptionAuthentication_paramsBasic: type: object properties: userName: type: string description: | Username to be used in HTTP Basic authentication. Shall be present if it has not been provisioned out of band. password: type: string description: | Password to be used in HTTP Basic authentication. Shall be present if it has not been provisioned out of band. 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. SubscriptionAuthentication_paramsOauth2ClientCredentials: type: object properties: clientId: type: string 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. clientPassword: type: string 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. tokenEndpoint: description: | The token endpoint from which the access token can be obtained. Shall be present if it has not been provisioned out of band. $ref: '#/definitions/Uri' 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. externalDocs: description: ETSI GS NFV-SOL 005 V2.7.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.07.01_60/gs_NFV-SOL005v020701p.pdf