diff --git a/Readme.md b/Readme.md index 2d91c95f1d9f3e8abed6c2ed0f245ea4eef4225c..79f29dce4579a17188cc0dd23e8a00a7e85816d6 100644 --- a/Readme.md +++ b/Readme.md @@ -30,7 +30,7 @@ and the results will be stored in a `build/` directory in the project folder. ## How to raise issues -Change requests can be filed at [ETSI Forge Bugzilla](forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=62&product=NFV). Please report errors, bugs or other issues [here](https://forge.etsi.org/bugzilla/enter_bug.cgi?product=NFV). +Please report errors, bugs or other issues [here](https://forge.etsi.org/rep/nfv/SOL005/-/issues). ## How to contribute diff --git a/src/SOL005/APIVersion/APIVersion.yaml b/src/SOL005/APIVersion/APIVersion.yaml index 3c27bffb5b8cffeb1125b688b5fd12c76b33cc13..d78d12415413ac1ecfcb4938a98fc39a62b6bccd 100644 --- a/src/SOL005/APIVersion/APIVersion.yaml +++ b/src/SOL005/APIVersion/APIVersion.yaml @@ -19,8 +19,8 @@ info: version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_nfv-sol005v030701p.pdf servers: - url: http://127.0.0.1/ diff --git a/src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml b/src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml index a8c0da6c024bd4d2592bf4d8da23f70cb514bb4a..98e5c8d071aa7cd5789a7c4159e930284c059de6 100644 --- a/src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml +++ b/src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/nfvici/v1 @@ -315,7 +315,7 @@ components: description: | Identifier of the VIM with associated NFVI capacity information. This identifier can be retrieved from the "vimId" attribute in the CapacityShortageNotification. - It can also be retrieved from the "vimId" attribute in the payload body of the response. + It can also be retrieved from the "vimId" attribute in the message content of the response. required: true style: simple explode: false @@ -329,7 +329,7 @@ components: Identifier of the capacity threshold. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual capacity threshold" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -498,11 +498,11 @@ components: CapacityThresholds.Post.422: description: | - 422 UNPROCESSABLE ENTITY + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported and the payload - body of a request contains syntactically correct data but the data cannot be processed. - The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], + Shall be returned upon the following error: The content type of the message content is supported and the message + content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013, including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested the Notification endpoint as described in clause 10.4.6.3.2 and the test has failed. @@ -592,6 +592,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string content: application/json: schema: @@ -630,9 +664,9 @@ components: IndividualCapacityThreshold.Patch.422: description: | - 422 UNPROCESSABLE ENTITY + 422 Unprocessable Content - content type of the payload body is supported and the payload body of a request contains syntactically + The content type of the message content is supported and the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], including rules for the presence of the response body. diff --git a/src/SOL005/NFVICapacityInformation/definitions/NFVICapacityInformation_def.yaml b/src/SOL005/NFVICapacityInformation/definitions/NFVICapacityInformation_def.yaml index 0416e51cc672c91137076f718d5873763b8930c2..a7ae4019a965c1701d87d4eb1ff12a9d267a8ca2 100644 --- a/src/SOL005/NFVICapacityInformation/definitions/NFVICapacityInformation_def.yaml +++ b/src/SOL005/NFVICapacityInformation/definitions/NFVICapacityInformation_def.yaml @@ -227,7 +227,7 @@ components: type: object description: | This type defines the format of a time interval. The type shall comply with the provisions defined in table 10.5.2.7-1. - NOTE: When only the startTime is present, there is no time interval being defined, and therefore the provided timing + NOTE: When only the aTime is present, there is no time interval being defined, and therefore the provided timing information refers to a specific point in time. required: - aTime diff --git a/src/SOL005/NFVICapacityInformationNotification/NFVICapacityInformationNotification.yaml b/src/SOL005/NFVICapacityInformationNotification/NFVICapacityInformationNotification.yaml index 38aaad72f0fe48404a6c82a695fd8e1ba7e2a772..dfadf7e3c71743b35a5a94b164b15f72bf1e327c 100644 --- a/src/SOL005/NFVICapacityInformationNotification/NFVICapacityInformationNotification.yaml +++ b/src/SOL005/NFVICapacityInformationNotification/NFVICapacityInformationNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index 91038d476180334396c5cdc1b3a28ac53d1961f2..bdd9448834e740f8f54ee6df51b9b57f12bbb0de 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.1-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/nsd/v2 @@ -37,7 +37,7 @@ paths: # NS Descriptors # ############################################################################### /ns_descriptors: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.2 + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.2 parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization - $ref: ../components/SOL005_params.yaml#/components/parameters/Version @@ -128,7 +128,7 @@ paths: # Individual NS Descriptor # ############################################################################### /ns_descriptors/{nsdInfoId}: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.3 + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.3 parameters: - $ref: '#/components/parameters/NsdInfoId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization @@ -224,7 +224,7 @@ paths: # NSD Archive Content # ############################################################################### /ns_descriptors/{nsdInfoId}/nsd_content: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.4 + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.4 parameters: - $ref: '#/components/parameters/NsdInfoId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization @@ -297,7 +297,7 @@ paths: # NSD # ############################################################################### /ns_descriptors/{nsdInfoId}/nsd: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.4a + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.4a parameters: - $ref: '#/components/parameters/NsdInfoId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization @@ -337,7 +337,7 @@ paths: # NSD Archive Manifest # ############################################################################### /ns_descriptors/{nsdInfoId}/manifest: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.4b + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.4b parameters: - $ref: '#/components/parameters/NsdInfoId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization @@ -387,7 +387,7 @@ paths: # Individual NSD Archive Artifact # ############################################################################### /ns_descriptors/{nsdInfoId}/artifacts/{artifactPath}: - #ETSI GS NFV-SOL 005 V3.5.1 location: 5.4.4c + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.4c parameters: - $ref: '#/components/parameters/NsdInfoId' - $ref: '#/components/parameters/ArtifactPathInNSD' @@ -439,7 +439,7 @@ paths: # PNF Descriptors # ############################################################################### /pnf_descriptors: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.5 + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.5 parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization - $ref: ../components/SOL005_params.yaml#/components/parameters/Version @@ -530,7 +530,7 @@ paths: # Individual PNF Descriptor # ############################################################################### /pnf_descriptors/{pnfdInfoId}: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.6 + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.6 parameters: - $ref: '#/components/parameters/PnfdInfoId' @@ -624,7 +624,7 @@ paths: # PNFD Archive Content # ############################################################################### /pnf_descriptors/{pnfdInfoId}/pnfd_content: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.7 + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.7 parameters: - $ref: '#/components/parameters/PnfdInfoId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization @@ -698,7 +698,7 @@ paths: # PNFD # ############################################################################### /pnf_descriptors/{pnfdInfoId}/pnfd: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.7a + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.7a parameters: - $ref: '#/components/parameters/PnfdInfoId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization @@ -739,7 +739,7 @@ paths: # PNFD Archive Manifest # ############################################################################### /pnf_descriptors/{pnfdInfoId}/manifest: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.7b + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.7b parameters: - $ref: '#/components/parameters/PnfdInfoId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization @@ -791,7 +791,7 @@ paths: # Individual PNFD Archive Artifact # ############################################################################### /pnf_descriptors/{pnfdInfoId}/artifacts/{artifactPath}: - #ETSI GS NFV-SOL 005 V3.5.1 location: 5.4.7c + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.7c parameters: - $ref: '#/components/parameters/PnfdInfoId' - $ref: '#/components/parameters/ArtifactPathInPNFD' @@ -842,7 +842,7 @@ paths: # Subscriptions # ############################################################################### /subscriptions: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.8 + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.8 parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization - $ref: ../components/SOL005_params.yaml#/components/parameters/Version @@ -924,7 +924,7 @@ paths: # Individual Subscription # ############################################################################### /subscriptions/{subscriptionId}: - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.9 + #ETSI GS NFV-SOL 005 V3.7.1 location: 5.4.9 parameters: - $ref: '#/components/parameters/SubscriptionId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization @@ -1039,7 +1039,7 @@ components: ContentTypeZip: name: Content-Type description: | - The payload body contains a ZIP file that represents the NSD archive, as specified above. + The message content contains a ZIP file that represents the NSD archive, as specified above. The request shall set the "Content-Type" HTTP header to "application/zip". in: header required: true @@ -1053,6 +1053,10 @@ components: in: path description: | Identifier of the individual NS descriptor resource. + + 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 message content of that response. required: true style: simple explode: false @@ -1064,6 +1068,9 @@ components: in: path description: | Identifier of the individual PNF descriptor resource. + 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 message content of that response. required: true style: simple explode: false @@ -1130,7 +1137,7 @@ components: 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. + from the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1201,7 +1208,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1243,7 +1250,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1289,7 +1296,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1324,7 +1331,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1344,6 +1351,41 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + content: application/json: schema: @@ -1362,7 +1404,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1449,7 +1491,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1479,12 +1521,12 @@ components: 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 message content 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: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1513,12 +1555,12 @@ components: shall be returned when a single consecutive byte range from the content of the NSD file has been read successfully according to the request. The response body shall contain the requested part of the NSD archive. - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233 [10]. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1557,7 +1599,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1592,7 +1634,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1634,7 +1676,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1678,6 +1720,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string NsdArchiveContent.Put.409: description: | @@ -1706,7 +1782,7 @@ components: type: string Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1721,7 +1797,7 @@ components: 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 + The message content 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 @@ -1729,7 +1805,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1801,7 +1877,7 @@ components: type: string Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1819,18 +1895,18 @@ components: 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 + certificate file), the message content 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: + and the message content shall contain a ZIP archive which includes: - a copy of the manifest file of the NSD archive; - a copy of the related individual certificate file. headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1863,7 +1939,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1895,7 +1971,7 @@ components: Shall be returned when the content of the artifact file has been read successfully. If the "include_signatures" request URI parameter was not provided in the related request, - the payload body shall contain a copy of the artifact file from the NSD archive, as defined + the message content shall contain a copy of the artifact file from the NSD archive, as defined by ETSI GS NFV-SOL 007, and the "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the artifact is encrypted, the header shall be set to the value "application/cms" (IETF RFC 7193). @@ -1903,14 +1979,14 @@ components: If the content type cannot be determined, the header shall be set to the value "application/octet-stream". If the "include_signatures" request URI parameter was provided in the related request, the "Content-Type" HTTP header shall be set to "application/zip" - and the payload body shall contain a ZIP archive which includes: + and the message content shall contain a ZIP archive which includes: - a copy of the artifact file from the VNF package, as defined by ETSI GS NFVSOL 007 - the related security information (individual signature file and optional related individual certificate file). headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1947,11 +2023,11 @@ components: If the content type cannot be determined, the header shall be set to the value "application/octet-stream". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1984,7 +2060,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2020,7 +2096,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2080,7 +2156,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2119,7 +2195,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2170,7 +2246,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2206,7 +2282,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2226,6 +2302,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string content: application/json: schema: @@ -2286,12 +2396,12 @@ components: 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 message content shall contain a copy of the PNFD archive The "Content-Type" HTTP header shall be set to "application/zip". headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2320,12 +2430,12 @@ components: 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-Range" HTTP header shall be provided according to IETF RFC 9110. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2364,7 +2474,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2466,6 +2576,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string PnfdArchiveContent.Put.409: description: | @@ -2494,7 +2638,7 @@ components: type: string Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2509,7 +2653,7 @@ components: 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 + The message content 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 @@ -2517,7 +2661,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2575,7 +2719,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2608,20 +2752,20 @@ components: 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, + embedded (i.e. there is no separate certificate file), the message + content 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: + the message content shall contain a ZIP archive which includes: - a copy of the manifest file of the PNFD archive; - a copy of the related individual certificate file. headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2657,7 +2801,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2692,7 +2836,7 @@ components: Shall be returned when the content of the artifact file has been read successfully. If the "include_signatures" request URI parameter was not provided in the related request, - the payload body shall contain a copy of the artifact file from the PNFD archive, as defined + the message content shall contain a copy of the artifact file from the PNFD archive, as defined by ETSI GS NFV-SOL 004, and the "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the artifact is encrypted, the header shall be set to the value "application/cms" (IETF RFC 7193). @@ -2700,14 +2844,14 @@ components: If the content type cannot be determined, the header shall be set to the value "application/octetstream". If the "include_signatures" request URI parameter was provided in the related request, the "Content-Type" HTTP header shall be set to "application/zip" - and the payload body shall contain a ZIP archive which includes: + and the message content shall contain a ZIP archive which includes: - a copy of the artifact file from the VNF package, as defined by ETSI GS NFVSOL 004 - the related security information (individual signature file and optional related individual certificate file). headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2744,11 +2888,11 @@ components: If the content type cannot be determined, the header shall be set to the value "application/octet-stream". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2780,7 +2924,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2813,7 +2957,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2848,7 +2992,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2881,7 +3025,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2924,7 +3068,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -2953,10 +3097,10 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported and the payload - body of a request contains syntactically correct data but the data cannot be processed. + Shall be returned upon the following error: The content type of the message content is supported and the message content + of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested @@ -2966,7 +3110,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -3008,7 +3152,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -3058,7 +3202,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: diff --git a/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml b/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml index 198a39ffce9eb2c008b6054b4725f1abb54a088b..41757cc5723c1a9c28540d1f704b7e083acabafa 100644 --- a/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml +++ b/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.1-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml index a9af4563ce66b47f0661ffc4692cb725c3f7edb8..b4ed7f890d7016de6e72ee51624bbab3475bbff5 100644 --- a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml +++ b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/nsfm/v1 @@ -85,8 +85,8 @@ paths: /alarms/{alarmId}: parameters: - $ref: '#/components/parameters/AlarmId' - - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization + - $ref: '../components/SOL005_params.yaml#/components/parameters/Version' + - $ref: '../components/SOL005_params.yaml#/components/parameters/Authorization' get: description: | The API consumer can use this method to read an individual alarm. See clause 8.4.3.3.2. @@ -296,7 +296,7 @@ components: description: | Identifier of the alarm. This identifier can be retrieved from the "id" attribute of the "alarm" attribute in the AlarmNotification or AlarmClearedNotification. It can also be retrieved from the "id" attribute of - the applicable array element in the payload body of the response to a GET request to the "Alarms" resource. + the applicable array element in the message content of the response to a GET request to the "Alarms" resource. required: true style: simple explode: false @@ -309,7 +309,7 @@ components: 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. + be retrieved from the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -627,11 +627,11 @@ components: FmSubscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported and the payload - body of a request contains syntactically correct data but the data cannot be processed. - The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013, including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested the Notification endpoint as described in clause 8.4.6.3.2 and the test has failed. @@ -689,7 +689,7 @@ components: type: string Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: diff --git a/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml b/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml index 3c3e86c0d9751534e273d219f4c5eb9783243162..8d992aa9270f53d701d41924455f0118be39952f 100644 --- a/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml +++ b/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml @@ -20,7 +20,7 @@ definitions: properties: id: description: > - Identifier of this Alarm information element. + Identifier of this Alarm structure. $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" managedObjectId: description: > diff --git a/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml b/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml index 79f8a9b3b7a5d65d8f5a30120922179552efa408..519171cd40ffd6bc72a7bbc1f2f66eb82a0bb856 100644 --- a/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml +++ b/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL005/NSLCMCoordination/NSLCMCoordination.yaml b/src/SOL005/NSLCMCoordination/NSLCMCoordination.yaml index 9714854025a6385c0097cf9d0ddbd7a3fd30d446..1a08a01eb7096a124bfdf71e819e7568c9ff8012 100644 --- a/src/SOL005/NSLCMCoordination/NSLCMCoordination.yaml +++ b/src/SOL005/NSLCMCoordination/NSLCMCoordination.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/lcmcoord/v1 @@ -350,8 +350,8 @@ components: 202 ACCEPTED Shall be returned when the cancellation request has been accepted for processing. - - The response shall have an empty payload body. + + The response shall have an empty message content. headers: Version: description: The used API version. diff --git a/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml b/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml index bd76cb81b7412abafa2696ab2c25da268a611c24..c5e6a18a3009ea6d82c5c7f75fe732b9b151d88f 100644 --- a/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml +++ b/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/nslcm/v2 @@ -998,7 +998,7 @@ components: in: path description: | Identifier of the "Individual VNF snapshot" resource. - This identifier can be retrieved from the "id" attribute in the payload body of a response to a query to + This identifier can be retrieved from the "id" attribute in the message content of a response to a query to "VNF snapshots" resource. required: true style: simple @@ -1063,7 +1063,7 @@ components: NsLcmOpOccCancelRequest: description: | - The POST request to this resource shall include a CancelMode structure in the payload body to choose between + The POST request to this resource shall include a CancelMode structure in the message content to choose between "graceful" and "forceful" cancellation. content: application/json: @@ -1152,7 +1152,7 @@ components: type: string Content-Type: description: | - The MIME type of the body of the response.This header field shall be present if the response has a + The MIME type of the body of the response. This header field shall be present if the response has a non-empty message body. style: simple explode: false @@ -1715,7 +1715,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing, but processing has not been completed. - The response shall have an empty payload body. + The response shall have an empty message content. headers: Version: description: | @@ -1828,7 +1828,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing, but processing has not been completed. - The response shall have an empty payload body. + The response shall have an empty message content. headers: Version: description: | @@ -1941,7 +1941,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing, but processing has not been completed. - The response shall have an empty payload body. + The response shall have an empty message content. headers: Version: @@ -2241,7 +2241,7 @@ components: Shall be returned upon the following error: The operation cannot be executed currently, due to a conflict with the state of the NS LCM operation occurrence resource. - Typically, this is due to the fact that the operation occurrence is not in STARTING, PROCESSING or ROLLING_BACK state. + Typically, this is due to the fact that the operation occurrence is not in PROCESSING or ROLLING_BACK state. The response body shall contain a ProblemDetails structure, in which the "detail" attribute shall convey more information about the error. headers: @@ -2383,10 +2383,10 @@ components: NsLcmSubscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported and the - payload body of a request contains syntactically correct data but the data cannot be processed. + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested diff --git a/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml b/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml index e2e6917b3d9795772b9685760f648502c7b253a1..3908e154b9ff022a8257453c86ac7cb6297637eb 100644 --- a/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml +++ b/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml @@ -176,13 +176,15 @@ definitions: description: > Cancellation mode. - The NFVO shall not start any new VNF lifecycle management and resource + If the NS LCM operation occurrence is in "PROCESSING" or "ROLLING_BACK" state, + the NFVO shall not start any new VNF lifecycle management and resource management operation, and shall wait for the ongoing VNF lifecycle management and resource management operations in the underlying system, typically the VNFM and VIM, to finish execution or to time out. After that, the NFVO shall put the operation occurrence into the FAILED_TEMP state. - The NFVO shall not start any new VNF lifecycle management and resource + If the NS LCM operation occurrence is in "PROCESSING" or "ROLLING_BACK" state, + the NFVO shall not start any new VNF lifecycle management and resource management operation, shall cancel the ongoing VNF lifecycle management and resource management operations in the underlying system, typically the VNFM and VIM, and shall wait for the cancellation to finish or to time out. After that, the NFVO @@ -197,7 +199,7 @@ definitions: This type represents a response for Query NS operation. It shall comply with the provisions defined in Table 6.5.2.10-1. - NOTE 1: If the "nsState" attribute is INSTANTIATED, at least either one + NOTE 1: Void. "vnfInstance" attribute or one "nestedNsInstanceId" attribute shall be present. NOTE 2: The “priority” attribute of the NS instance is configured in the NSD in the NsDf structure. The mapping from application-specific priority values to a value in the NsDf is under OSS/BSS responsibility. @@ -250,7 +252,6 @@ definitions: vnfInstance: description: > Information on constituent VNF(s) of the NS instance. - See note 1. type: array items: $ref: "#/definitions/VnfInstance" @@ -284,7 +285,6 @@ definitions: nestedNsInstanceId: description: > Identifier of the nested NS(s) of the NS instance. - See note. type: array items: $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" @@ -402,7 +402,7 @@ definitions: This type represents a VNF instance. It shall comply with the provisions defined in table 6.5.3.57-1. NOTE: Clause B.3.2 of ETSI GS NFV-SOL 003 provides examples illustrating the relationship among the - different run-time information elements (CP, VL and link ports) used to represent the connectivity + different run-time data types (CP, VL and link ports) used to represent the connectivity of a VNF. NOTE 1: Modifying the value of this attribute shall not be performed when conflicts exist between the @@ -1521,6 +1521,7 @@ definitions: $ref: "#/definitions/IdentifierInVim" ExtManagedVirtualLinkInfo: + description: This type provides information about an externally-managed internal virtual link for VNFs. type: object required: - id @@ -2645,10 +2646,10 @@ definitions: InstantiateVnfData: description: > - This type represents the information related to a SAP of a NS. The InstantiateVnfData data type specifies the - parameters that are needed for VNF instantiation. This information element is used for the bottom-up NS creation when - the OSS/BSS explicitly requests VNF instantiation for a given NS. When the NFVO invokes the Instantiate VNF - update operation, a set of these parameters are then passed by the NFVO to the VNFM. + This type represents the information that are needed for VNF instantiation. This data type is used for the + bottom-up NS creation when the OSS/BSS explicitly requests VNF instantiation for a given NS. When the NFVO + invokes the Instantiate VNF update operation, a set of these parameters are then passed by the NFVO to the VNFM. + It shall comply with the provisions defined in table 6.5.3.24-1 NOTE 1: It is possible to have several ExtManagedVirtualLinkData for the same VNF internal VL in case of a multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkData @@ -2661,6 +2662,7 @@ definitions: may select a matching vnfProfile based on other information, such as external VL. NOTE 3: Either the attribute triple "vnfdId, vnfFlavourId and vnfInstantiationLevelId (if provided)" or the attribute "vnProfileId" shall be present, but not both. + type: object properties: vnfdId: @@ -4344,13 +4346,13 @@ definitions: description: > Value | Description ------|------------ - PROCESSING | The LCM operation is currently in execution. - COMPLETED | The LCM operation has been completed successfully. - PARTIALLY_COMPLETED | The LCM operation has been partially completed with accepTable errors. - FAILED_TEMP | The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. - FAILED | The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action will not succeed. - OLLING_BACK | The LCM operation is currently being rolled back. - ROLLED_BACK | The LCM operation has been successfully rolled back, i.e. The state of the NS prior to the original operation invocation has been restored as closely as possible. + PROCESSING | The NS LCM operation is currently in execution. + COMPLETED | The NS LCM operation has been completed successfully. + PARTIALLY_COMPLETED | The NS LCM operation has been partially completed with accepTable errors. + FAILED_TEMP | The NS LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. + FAILED | The NS LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action will not succeed. + ROLLING_BACK | The NS LCM operation is currently being rolled back. + ROLLED_BACK | The NS LCM operation has been successfully rolled back, i.e. The state of the NS prior to the original operation invocation has been restored as closely as possible. type: string enum: - PROCESSING @@ -6635,7 +6637,7 @@ definitions: properties: cpInstanceId: description: > - Identifier of this VIP CP instance and of this VipCpInfo information element. + Identifier of this VIP CP instance and of this VipCpInfo structure. $ref: "#/definitions/IdentifierInVnf" cpdId: description: > diff --git a/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml b/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml index cba8174db25b156b05c505d4ca1e2173694a5707..4d72fe698fb7094f9eea1c7e754fdaeab614fb73 100644 --- a/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml +++ b/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml @@ -14,11 +14,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml index b36f7130f1dafa8d099d29b86035a33d86c0d672..55cb67ac689eb0bbc0fe2848f6ecfbc82f12529a 100644 --- a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml +++ b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/nspm/v2 @@ -37,7 +37,7 @@ paths: # PM Jobs # ############################################################################### /pm_jobs: - #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.2 + #ETSI GS NFV-SOL 005 V3.7.1 location: 7.4.2 parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization - $ref: ../components/SOL005_params.yaml#/components/parameters/Version @@ -124,11 +124,11 @@ paths: # Individual PM job # ############################################################################### /pm_jobs/{pmJobId}: - #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.3 + #ETSI GS NFV-SOL 005 V3.7.1 location: 7.4.3 parameters: - $ref: '#/components/parameters/PmJobId' - - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization - - $ref: ../components/SOL005_params.yaml#/components/parameters/Version + - $ref: '../components/SOL005_params.yaml#/components/parameters/Authorization' + - $ref: '../components/SOL005_params.yaml#/components/parameters/Version' get: description: | @@ -213,7 +213,7 @@ paths: # Individual performance report # ############################################################################### /pm_jobs/{pmJobId}/reports/{reportId}: - #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.4 + #ETSI GS NFV-SOL 005 V3.7.1 location: 7.4.4 parameters: - $ref: '#/components/parameters/PmJobId' - $ref: '#/components/parameters/ReportId' @@ -250,7 +250,7 @@ paths: # Thresholds # ############################################################################### /thresholds: - #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.5 + #ETSI GS NFV-SOL 005 V3.7.1 location: 7.4.5 parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization - $ref: ../components/SOL005_params.yaml#/components/parameters/Version @@ -325,11 +325,11 @@ paths: # Individual threshold # ############################################################################### /thresholds/{thresholdId}: - #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.6 + #ETSI GS NFV-SOL 005 V3.7.1 location: 7.4.6 parameters: - $ref: '#/components/parameters/ThresholdId' - - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization - - $ref: ../components/SOL005_params.yaml#/components/parameters/Version + - $ref: '../components/SOL005_params.yaml#/components/parameters/Authorization' + - $ref: '../components/SOL005_params.yaml#/components/parameters/Version' get: description: | @@ -423,7 +423,7 @@ paths: # - name: Authorization # description: | # The authorization token for the request. -# Reference: IETF RFC 7235. +# Reference: IETF RFC 9110. # in: header # required: false # type: string @@ -452,14 +452,14 @@ paths: # - name: Accept # description: | # Content-Types that are acceptable for the response. -# Reference: IETF RFC 7231. +# Reference: IETF RFC 9110. # in: header # required: true # type: string # - name: Content-Type # description: | # The MIME type of the body of the request. -# Reference: IETF RFC 7231. +# Reference: IETF RFC 9110. # in: header # required: true # type: string @@ -553,7 +553,7 @@ paths: # - name: Accept # description: | # Content-Types that are acceptable for the response. -# Reference: IETF RFC 7231. +# Reference: IETF RFC 9110. # in: header # required: true # type: string @@ -635,14 +635,14 @@ paths: # Identifier of the 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. +# message content of that response. # in: path # type: string # required: true # - name: Authorization # description: | # The authorization token for the request. -# Reference: IETF RFC 7235 +# Reference: IETF RFC 9110 # in: header # required: true # type: string @@ -664,7 +664,7 @@ paths: # - name: Accept # description: | # Content-Types that are acceptable for the response. -# Reference: IETF RFC 7231 +# Reference: IETF RFC 9110 # in: header # required: true # type: string @@ -734,7 +734,7 @@ paths: # - name: Accept # description: | # Content-Types that are acceptable for the response. -# Reference: IETF RFC 7231. +# Reference: IETF RFC 9110. # in: header # required: true # type: string @@ -784,7 +784,7 @@ components: name: Content-Type in: header description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 required: true schema: type: string @@ -798,7 +798,7 @@ components: Identifier of the PM job. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new PM job resource. It can also be retrieved from the "id" attribute in the - payload body of that response. + message content of that response. required: true style: simple explode: false @@ -824,7 +824,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new threshold resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -906,10 +906,10 @@ components: PmJobs.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content - content type of the payload body is supported and the payload body of a request contains syntactically correct - data but the data cannot be processed. + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested @@ -965,7 +965,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1058,6 +1058,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string content: application/json: schema: @@ -1090,10 +1124,10 @@ components: IndividualPmJob.Patch.422: description: | - 422 Unprocessable entity + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported and the payload - body of a request contains syntactically correct data but the data cannot be processed. + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested @@ -1222,11 +1256,11 @@ components: Thresholds.Post.422: description: | - 422 Unprocessable entity + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported and the payload - body of a request contains syntactically correct data but the data cannot be processed. - The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013, including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested the Notification endpoint as described in clause 7.4.9.3.2 and the test has failed. @@ -1278,7 +1312,7 @@ components: headers: Content-Type: description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 style: simple explode: false schema: @@ -1403,11 +1437,11 @@ components: IndividualThreshold.Patch.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported and the payload - body of a request contains syntactically correct data but the data cannot be processed. - The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013, including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested the Notification endpoint as described in clause 7.4.9.3.2 and the test has failed. diff --git a/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml b/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml index a7b12b5681514a0962a450df0c11d5c6e3f3bd64..b33fac24c92eae1a25b32304362b47c456f9b16d 100644 --- a/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml +++ b/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml index d220354844f219072ae7924266ebd7a73ccba00c..4d092abfdab425a960e9a7a7fb139cdc08411d81 100644 --- a/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/vnfpkgm/v2 @@ -756,7 +756,7 @@ components: 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 "Individual subscription" resource. It can also be retrieved - from the "id" attribute in the payload body of that response. + from the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -784,7 +784,7 @@ components: VnfPackageExtArtifactsRequest: description: | - The payload body contains the access configuration information based on which the NFVO can obtain the + The message content contains the access configuration information based on which the NFVO can obtain the external VNF package artifact files. content: application/json: @@ -800,18 +800,19 @@ components: file: type: string description: | - The payload body contains a ZIP file that represents the VNF package. The "Content-Type" HTTP header shall + The message content 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. format: binary required: true VnfPackageUploadFromUriRequest: description: | - The payload body contains the address information based on which the NFVO can obtain the content of the VNF package. + The message content contains the address information based on which the NFVO can obtain the content of the VNF package. + The message content contains the address information based on which the NFVO can obtain the content of the VNF package. content: application/json: schema: - $ref: ./definitions/SOL005VNFPackageManagement_def.yaml#/definitions/UploadVnfPkgFromUriRequest + $ref: ./definitions/SOL005VNFPackageManagement_def.yaml#/definitions/UploadVnfPackageFromUriRequest required: true VnfPkgSubscriptionRequest: @@ -1013,6 +1014,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string content: application/json: schema: @@ -1059,7 +1094,7 @@ components: IndividualVnfPackageVnfd.Get.200: description: | 200 OK - Shall be returned when the content of the VNFD has been read successfully. The payload body shall contain a + Shall be returned when the content of the VNFD has been read successfully. The message content shall contain a copy of the file representing the VNFD or a ZIP file that contains the file or multiple files representing the VNFD, as specified above. The "Content-Type" HTTP header shall be set according to the format of the returned file, i.e. to "text/plain" for a YAML file or to "application/zip" for a ZIP file. @@ -1184,6 +1219,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string content: application/json: schema: @@ -1270,14 +1339,16 @@ components: IndividualVnfPackageManifest.Get.200: description: | 200 OK - Shall be returned when the content of the manifest 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 - VNF package, 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: - a copy of the manifest file - of the VNF package - a copy of the related individual certificate file. + + Shall be returned when the content of the manifest 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 message content shall contain a copy of the manifest file of the VNF + package, 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 message content shall contain a ZIP + archive which includes: + - a copy of the manifest file of the VNF package headers: Version: description: | @@ -1406,7 +1477,7 @@ components: If the NFVO supports range requests, this response shall be returned when a single consecutive byte range from the content of the VNF package file has been read successfully according to the request. The response body shall contain the requested part of the VNF package file. - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233 [10]. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Version: @@ -1560,7 +1631,7 @@ components: description: | 200 OK Shall be returned when the whole content of the archive containing the artifact files has been read successfully. - The payload body shall be a ZIP archive containing the requested set of artifacts selected according to the provisions + The message content shall be a ZIP archive containing the requested set of artifacts selected according to the provisions specified above in this clause, and, if the flag "include_signatures" was provided in the related request, the applicable signature files and, if available, the separate certificate files from the VNF package. The "Content-Type" HTTP header shall be set to "application/zip". @@ -1597,7 +1668,7 @@ components: read successfully according to the request. The response body shall contain the requested part of the archive. The "Content-Type" HTTP header shall be set to "application/zip". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233 [10]. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Version: description: | @@ -1748,13 +1819,13 @@ components: IndividualVnfPackageArtifact.Get.200: description: | 200 OK Shall be returned when the whole content of the artifact file has been read successfully. If the - "include_signatures" request URI parameter was not provided in the related request, the payload body shall + "include_signatures" request URI parameter was not provided in the related request, the message content shall contain a copy of the artifact file from the VNF package, as defined by ETSI GS NFV-SOL 004 [5], and the "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the artifact is encrypted, the header shall be set to the value "application/cms" (IETF RFC 7193 [17]). If the content type cannot be determined, the header shall be set to the value "application/octet-stream". If the "include_signatures" request URI parameter was provided in the related request, the "ContentType" - HTTP header shall be set to "application/zip" and the payload body shall contain a ZIP archive which includes: + HTTP header shall be set to "application/zip" and the message content shall contain a ZIP archive which includes: - a copy of the artifact file from the VNF package, as defined by ETSI GS NFV-SOL 004 [5]; - the related security information (individual signature file and optional related individual certificate file). headers: @@ -1791,7 +1862,7 @@ components: requested part of the artifact file from the VNF package, as defined by ETSI GS NFV-SOL 004 [5]. The "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the content type cannot be determined, the header shall be set to the value "application/octet-stream". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233 [10]. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Version: @@ -2033,10 +2104,10 @@ components: VnfPkgSubscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content - Shall be returned upon the following error: The content type of the payload body is supported and the payload - body of a request contains syntactically correct data but the data cannot be processed. + Shall be returned upon the following error: The content type of the message content is supported and the message + content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [16], including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has tested diff --git a/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml b/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml index 230927107ca8774c5eb905798813e77a35e38ef4..bd5a3da0465871c1c14b4ec83dec76551050bd3a 100644 --- a/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml +++ b/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml @@ -16,7 +16,6 @@ definitions: - onboardingState - operationalState - usageState - - vnfmInfo - _links properties: id: @@ -129,9 +128,9 @@ definitions: $ref: "#/definitions/PackageUsageStateType" vnfmInfo: description: > - Specifies VNFMs compatible with the VNF. - This information is copied from the VNFD. - See note 4. + Specifies VNFMs compatible with the VNF. This information is + copied from the VNFD of the on-boarded VNF package. See note 4. + It shall be present after the VNF package content has been on-boarded and absent otherwise. type: array items: type: string @@ -178,6 +177,9 @@ definitions: description: > This type represents an artifact other than a software image which is contained in or external to a VNF package. It shall comply with provisions defined in Table 9.5.3.3-1. + + NOTE: The attribute name "artifactURI" does not comply with the naming convention defined in clause + 4.3 of ETSI GS NFV-SOL 015. This is to maintain the backward compatibility. required: - isEncrypted - checksum @@ -203,13 +205,20 @@ definitions: synthesize this path in a manner that avoids any collision of the synthesized artifact path with the paths and names of artifacts included in the package. + + The attribute name "artifactURI" does not comply with the naming + convention defined in clause 4.3 of ETSI GS NFV-SOL 015. + This is to maintain the backward compatibility. $ref: "../../definitions/SOL005_def.yaml#/definitions/String" artifactURI: description: > URI of the artifact as defined in the VNF package manifest. Shall be present if the artifact is external to the package and shall be absent otherwise. - EXAMPLE: https://example.com/m%40ster.sh + + EXAMPLE: https://example.com/m%40ster.sh + See note. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Uri" checksum: description: > @@ -498,7 +507,7 @@ definitions: User defined data to be updated. For existing keys, the value is replaced. See note. $ref: "../../definitions/SOL005_def.yaml#/definitions/KeyValuePairs" - UploadVnfPkgFromUriRequest: + UploadVnfPackageFromUriRequest: description: > This type represents the request parameters for uploading the content of a VNF package. The NFVO can obtain the VNF package content through the information provided in the request parameters. It shall comply with the provisions @@ -515,32 +524,13 @@ definitions: $ref: "../../definitions/SOL005_def.yaml#/definitions/Uri" authType: description: > - Defines the type of authentication / - authorization for downloading the VNF - package. + Defines the type of authentication/authorization for downloading the VNF package. Permitted values: - - BASIC: Only the "username" and - "password" attributes shall be - present. - - OAUTH2_CLIENT_CREDENTIAL - S: Only the - "paramsOauth2ClientCredentials" - attribute shall be present. - This attribute shall not be present if no - credentials are provided for the artifact. + - OAUTH2_CLIENT_CREDENTIALS: Only the "paramsOauth2ClientCredentials" attribute shall be present. + This attribute shall not be present if the credentials were provisioned out of band type: string enum: - - BASIC - OAUTH2_CLIENT_CREDENTIALS - username: - description: > - User name to be used for authentication. - type: string - password: - description: > - Password to be used for authentication. - Shall not be present in response bodies. - type: string paramsOauth2ClientCredentials: description: > Parameters for authentication/authorization @@ -821,32 +811,12 @@ definitions: $ref: "../../definitions/SOL005_def.yaml#/definitions/Uri" authType: description: > - Defines the type of authentication / - authorization for downloading the VNF - package. + Defines the type of authentication/authorization for downloading the VNF package. Permitted values: - - BASIC: Only the "username" and - "password" attributes shall be - present. - - OAUTH2_CLIENT_CREDENTIAL - S: Only the - "paramsOauth2ClientCredentials" - attribute shall be present. - This attribute shall not be present if no - credentials are provided for the artifact. - type: string + - OAUTH2_CLIENT_CREDENTIALS: Only the "paramsOauth2ClientCredentials" attribute shall be present. + This attribute shall not be present if no credentials are provided for the artifact.type: string enum: - - BASIC - OAUTH2_CLIENT_CREDENTIALS - username: - description: > - User name to be used for authentication. - type: string - password: - description: > - Password to be used for authentication. - Shall not be present in response bodies. - type: string paramsOauth2ClientCredentials: description: > Parameters for authentication/authorization diff --git a/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml b/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml index 342cae489e7875d91b5cc05c05cc2bef5f720af4..d54ecb699ee999e71646c977f3410f84fbdf35e6 100644 --- a/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml +++ b/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL005/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml b/src/SOL005/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml index adfa75e97539c61b8a7a68759cc0f2573cf2bc4a..a2da1b5c10f90a61b19596862649e196c74e894f 100644 --- a/src/SOL005/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml +++ b/src/SOL005/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 005 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.06.01_60/gs_nfv-sol005v030601p.pdf + description: ETSI GS NFV-SOL 005 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.07.01_60/gs_NFV-SOL005v030701p.pdf servers: - url: http://127.0.0.1/vnfsnapshotpkgm/v1 @@ -319,7 +319,7 @@ paths: post: description: | The POST method provides the information for the NFVO to get the content of - a VNF snapshot package. See clause 11.4.5.3.1. + a VNF snapshot package. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType requestBody: @@ -656,7 +656,8 @@ components: UploadVnfSnapshotPkgFromUriRequest: description: | - Request parameters for uploading the content of a VNF snapshot package, as defined in clause 11.5.2.5. + The message content contains the address information based on which the NFVO can obtain the content + of the VNF snapshot package. content: application/json: schema: @@ -665,7 +666,8 @@ components: BuildVnfSnapshotPkgRequest: description: | - Request parameters for building the content of a VNF snapshot package, as defined in clause 11.5.2.6. + The message content contains the information based on which the NFVO can + build the content of the VNF snapshot package. content: application/json: schema: @@ -674,7 +676,7 @@ components: ExtractVnfSnapshotPkgRequest: description: | - Request parameters for extracting the content of a VNF snapshot package, as defined in clause 11.5.2.7. + The message content contains the information based on which the NFVO can extract the content of the VNF snapshot package. content: application/json: schema: @@ -683,8 +685,7 @@ components: CancelVnfSnapshotPkgOperationRequest: description: | - Request parameters for cancelling an ongoing operation related to the content of a VNF snapshot package, - as defined in clause 11.5.2.8. + The message content contains the information based on which the NFVO can proceed with the cancellation. content: application/json: schema: @@ -692,7 +693,9 @@ components: required: true VnfSnapshotPkgExtArtifactsAccessConfig: - description: VOID + description: | + The message content contains the access configuration information based on which the NFVO can obtain the external + VNF snapshot package artifact files content: application/json: schema: @@ -856,6 +859,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string content: application/json: schema: @@ -1006,7 +1043,7 @@ components: The response body shall contain the requested part of the VNF snapshot package file. - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. The "Content-Type" HTTP header shall be set as defined for the "200 OK" response. headers: @@ -1480,6 +1517,40 @@ components: explode: false schema: type: string + ETag: + description: | + Etag used in the header response. + style: simple + explode: false + schema: + type: string + Last-Modified: + description: | + Last-modified used in the header response. + style: simple + explode: false + schema: + type: string + If-Unmodified-Since: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string + If-Match: + description: | + Response header available in case the related "Last-Modified" or "ETag" headers + have been received in previous responses related to the target resource. + The API consumer should provide the "If-Unmodified-Since" or the "If-Match" header fields + as conditions (see sections 3.1 and 3.4 of IETF RFC 9110). + style: simple + explode: false + schema: + type: string content: application/json: schema: @@ -1574,7 +1645,7 @@ components: type of the artifact file. If the content type cannot be determined, the header shall be set to the value "application/octet-stream". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Version: description: The used API version. diff --git a/src/SOL005/VNFSnapshotPackageManagement/definitions/SOL005VNFSnapshotPackageManagement_def.yaml b/src/SOL005/VNFSnapshotPackageManagement/definitions/SOL005VNFSnapshotPackageManagement_def.yaml index 7bbb2efc042450b295a8ee30d136151600562f36..9e175d59ca1014527ee524a25ffa41ecfa1336b2 100644 --- a/src/SOL005/VNFSnapshotPackageManagement/definitions/SOL005VNFSnapshotPackageManagement_def.yaml +++ b/src/SOL005/VNFSnapshotPackageManagement/definitions/SOL005VNFSnapshotPackageManagement_def.yaml @@ -258,27 +258,16 @@ definitions: $ref: "../../definitions/SOL005_def.yaml#/definitions/Uri" authType: description: > - Defines the type of authentication / authorization for downloading the VNF snapshot package. - + Defines the type of authentication/authorization for downloading the VNF snapshot package. + Permitted values: - - BASIC: Only the "username" and "password" attributes shall be present. - - OAUTH2_CLIENT_CREDENTIALS: Only the "paramsOauth2ClientCredentials" attribute shall be present. - + - OAUTH2_CLIENT_CREDENTIALS: Only the "paramsOauth2ClientCredentials" attribute shall be present. + This attribute shall not be present if the credentials were provisioned out of band. + type: string enum: - - BASIC - OAUTH2_CLIENT_CREDENTIALS - username: - description: > - Username to be used for authentication. Shall be present if user name is needed and has - not been provisioned out of band. - type: string - password: - description: > - Password to be used for authentication. Shall be present if password is needed and has - not been provisioned out of band. - type: string paramsOauth2ClientCredentials: description: > Parameters for authentication/authorization using OAuth 2.0. @@ -427,26 +416,15 @@ definitions: $ref: "../../definitions/SOL005_def.yaml#/definitions/Uri" authType: description: > - Defines the type of authentication / authorization for downloading the VNF package. + Defines the type of authentication/authorization for downloading the VNF package. Permitted values: - - BASIC: Only the "username" and "password" attributes shall be present. - - OAUTH2_CLIENT_CREDENTIALS: Only the "paramsOauth2ClientCredentials" attribute shall - be present. + - OAUTH2_CLIENT_CREDENTIALS: Only the "paramsOauth2ClientCredentials" attribute shall be present. - This attribute shall not be present if no credentials are provided for the artifact. + This attribute shall not be present if no credentials are provided for the artifact type: string enum: - - BASIC - OAUTH2_CLIENT_CREDENTIALS - username: - description: > - Username to be used for authentication. - type: string - password: - description: > - Password to be used for authentication. Shall not be present in response bodies. - type: string paramsOauth2ClientCredentials: description: > Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS. diff --git a/src/SOL005/components/SOL005_params.yaml b/src/SOL005/components/SOL005_params.yaml index 58220e1eeedb146b54c60c8444ceaf3d20c9ec0a..181fa724ade2c20525e57caf5fdc2bde13f3b5c7 100644 --- a/src/SOL005/components/SOL005_params.yaml +++ b/src/SOL005/components/SOL005_params.yaml @@ -12,7 +12,7 @@ components: Accept: name: Accept description: > - Content-Types that are acceptable for the response. Reference: IETF RFC 7231. + Content-Types that are acceptable for the response. Reference: IETF RFC 9110. in: header required: true schema: @@ -21,7 +21,7 @@ components: Authorization: name: Authorization description: > - The authorization token for the request. Reference: IETF RFC 7235. + The authorization token for the request. Reference: IETF RFC 9110. in: header required: false schema: @@ -30,7 +30,7 @@ components: ContentType: name: Content-Type description: | - The MIME type of the body of the request. Reference: IETF RFC 7231 + The MIME type of the body of the request. Reference: IETF RFC 9110 in: header required: true schema: @@ -105,7 +105,7 @@ components: in: query description: | Flag (i.e. parameter without value) that instructs the NFVO to exclude the set of additional MANO artifacts - (i.e. those that are not images) from the response payload body. The NFVO shall support this parameter. + (i.e. those that are not images) from the response message content. The NFVO shall support this parameter. The OSS/BSS may supply this parameter. required: false style: form @@ -118,7 +118,7 @@ components: in: query description: | Flag (i.e. parameter without value) that instructs the NFVO to exclude the set of non-MANO artifacts from the - response payload body. The NFVO shall support this parameter. The OSS/BSS may supply this parameter. + response message content. The NFVO shall support this parameter. The OSS/BSS may supply this parameter. required: false style: form explode: true @@ -143,7 +143,7 @@ components: in: query description: | Flag (i.e. parameter without value) that instructs the NFVO to include external artifacts in the response - payload body. It shall not be treated as an error if this flag is provided but there is no external artifact + message content. It shall not be treated as an error if this flag is provided but there is no external artifact to include in the result. If this parameter is missing, no external artifacts shall be included. The NFVO shall support this parameter. The OSS/BSS may supply this parameter. required: false diff --git a/src/SOL005/definitions/SOL005_def.yaml b/src/SOL005/definitions/SOL005_def.yaml index 0b9b4409bdd563b2947063770ee16d0d2c520ea8..8ec6e889f80857b09bef831ace3741057781a45c 100644 --- a/src/SOL005/definitions/SOL005_def.yaml +++ b/src/SOL005/definitions/SOL005_def.yaml @@ -109,12 +109,12 @@ definitions: A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). + proactive content negotiation; see [RFC9110], Section 3.4). type: string status: description: > The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by the origin + The HTTP status code ([RFC9110], Section 6) generated by the origin server for this occurrence of the problem. type: integer detail: diff --git a/src/SOL005/responses/SOL005_resp.yaml b/src/SOL005/responses/SOL005_resp.yaml index d9047a1c550bb44286bb51668a655cf222c09f94..982cdc21b99459aa918da194ed0eb8e6a47b3ceb 100644 --- a/src/SOL005/responses/SOL005_resp.yaml +++ b/src/SOL005/responses/SOL005_resp.yaml @@ -107,7 +107,7 @@ components: "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), + query parameters or the message content 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. @@ -123,7 +123,7 @@ components: 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. + and IETF RFC 9110. 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. @@ -162,7 +162,7 @@ components: 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. + and IETF RFC 9110. The ProblemDetails structure may be provided. headers: Content-Type: description: The MIME type of the body of the response. @@ -239,7 +239,7 @@ components: 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. + contains a 200 OK response code and a message content with an empty array. headers: Content-Type: description: The MIME type of the body of the response. @@ -410,8 +410,8 @@ components: description: > 413 PAYLOAD TOO LARGE - If the payload body of a request is larger than the amount of data the API producer is willing or able to process, - it shall respond with this response code, following the provisions in IETF RFC 7231 for the use + If the message content of a request is larger than the amount of data the API producer is willing or able to process, + it shall respond with this response code, following the provisions in IETF RFC 9110 for the use of the "Retry-After" HTTP header and for closing the connection. The "ProblemDetails" structure may be omitted. headers: Content-Type: @@ -509,9 +509,9 @@ components: 422: description: > - 422 UNPROCESSABLE ENTITY + 422 UNPROCESSABLE CONTENT - If the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data + If the message content 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. @@ -626,7 +626,7 @@ components: 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 + it should respond with this response code, following the provisions in IETF RFC 9110 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" structure may be omitted. headers: