From 9351ac0faf5ce7e943c1ca2f34395aedfa130280 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Tue, 26 Mar 2019 17:43:54 +0100 Subject: [PATCH 01/93] SOL005_6 and SOL005_7: Version added to request and response headers in NSD mgmt interface --- src/SOL005/NSDManagement/NSDManagement.yaml | 343 ++++++++++++++++++-- 1 file changed, 315 insertions(+), 28 deletions(-) diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index b0be633..3ff1bec 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -94,7 +94,13 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 200: description: > @@ -117,7 +123,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 schema: type: array items: @@ -172,6 +184,12 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string - name: "body" in: "body" required: true @@ -214,7 +232,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -271,7 +295,13 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 200: description: > @@ -299,6 +329,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -359,7 +395,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 200: description: > @@ -383,6 +425,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 schema: type: array items: @@ -426,7 +474,13 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 204: description: > @@ -443,6 +497,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -523,6 +583,12 @@ paths: shall ignore the 'Range" header, process the GET request, and return the whole NSD file with a 200 OK response (rather than returning a 4xx error status code)." + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 200: description: > @@ -551,6 +617,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 206: $ref: "responses/SOL005_resp.yaml#/responses/206" 400: @@ -614,6 +686,12 @@ paths: in: header required: false type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 202: description: > @@ -638,6 +716,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 204: description: > 204 No Content @@ -723,6 +807,12 @@ paths: response body if this parameter is provided, or none of the parameters "all_fields," "fields", "exclude_fields", "exclude_default" are provided: userDefinedData. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 200: description: > @@ -746,6 +836,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 schema: type: "array" items: @@ -811,7 +907,13 @@ paths: CreatePnfdInfoRequest: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreatePnfdInfoRequest" description: > - Parameters of creating a PNF descriptor resource. + Parameters of creating a PNF descriptor resource. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 201: description: > @@ -843,7 +945,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 206: $ref: "responses/SOL005_resp.yaml#/responses/206" 400: @@ -902,7 +1010,13 @@ paths: type: "string" description: > The authorization token for the request. Details are specified - in clause 4.5.3 of GS NFV-SOL 005. + in clause 4.5.3 of GS NFV-SOL 005. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string responses: 200: description: > @@ -925,6 +1039,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 0 schema: type: "object" properties: @@ -1018,6 +1138,12 @@ paths: type: "string" description: > The authorization token for the request. Details are specified in clause 4.5.3. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: false + type: string - name: "body" in: "body" required: true @@ -1057,7 +1183,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 206: $ref: "responses/SOL005_resp.yaml#/responses/206" 400: @@ -1118,7 +1250,13 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -1140,7 +1278,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 206: $ref: "responses/SOL005_resp.yaml#/responses/206" 400: @@ -1187,6 +1331,12 @@ paths: in: header required: false type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -1259,7 +1409,13 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -1283,6 +1439,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 schema: type: "array" items: @@ -1366,6 +1528,12 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string - name: "body" in: "body" required: true @@ -1407,6 +1575,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 206: $ref: "responses/SOL005_resp.yaml#/responses/206" 400: @@ -1471,7 +1645,12 @@ paths: description: > The authorization token for the request. Details are specified in clause 4.5.3 of GS NFV-SOL 005. - + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -1499,6 +1678,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -1540,6 +1725,12 @@ paths: description: > The authorization token for the request. Details are specified in clause 4.5.3 of GS NFV-SOL 005. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -1618,7 +1809,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -1633,7 +1830,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -1698,7 +1901,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -1713,7 +1922,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -1779,7 +1994,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -1794,7 +2015,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -1859,7 +2086,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -1874,7 +2107,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -1939,7 +2178,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -1954,7 +2199,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -2019,7 +2270,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -2034,7 +2291,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -2099,7 +2362,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -2114,7 +2383,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -2162,6 +2437,12 @@ paths: in: header required: false type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -2178,6 +2459,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: -- GitLab From c2da30f63d1b84a1a6db6d3d79c764ebd5fc4629 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Wed, 27 Mar 2019 10:31:42 +0100 Subject: [PATCH 02/93] SOL005_6 and SOL005_7: Version added in response and request headers in NS fault mgmt interface --- src/SOL005/NSDManagement/NSDManagement.yaml | 42 ++--- .../NSFaultManagement/NSFaultManagement.yaml | 144 ++++++++++++++++-- 2 files changed, 156 insertions(+), 30 deletions(-) diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index 3ff1bec..d46533a 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -99,7 +99,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 200: @@ -129,7 +129,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 schema: type: array items: @@ -188,7 +188,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string - name: "body" in: "body" @@ -238,7 +238,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -300,7 +300,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 200: @@ -334,7 +334,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -400,7 +400,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 200: @@ -430,7 +430,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 schema: type: array items: @@ -479,7 +479,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 204: @@ -502,7 +502,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -587,7 +587,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 200: @@ -622,7 +622,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 206: $ref: "responses/SOL005_resp.yaml#/responses/206" 400: @@ -690,7 +690,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 202: @@ -721,7 +721,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 204: description: > 204 No Content @@ -811,7 +811,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 200: @@ -841,7 +841,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 schema: type: "array" items: @@ -912,7 +912,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 201: @@ -951,7 +951,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 206: $ref: "responses/SOL005_resp.yaml#/responses/206" 400: @@ -1015,7 +1015,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string responses: 200: @@ -1044,7 +1044,7 @@ paths: Version of the API used in the response. type: string maximum: 1 - minimum: 0 + minimum: 1 schema: type: "object" properties: @@ -1142,7 +1142,7 @@ paths: description: > Version of the API requested to use when responding to this request. in: header - required: false + required: true type: string - name: "body" in: "body" diff --git a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml index 497d6e8..0b4066c 100644 --- a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml +++ b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml @@ -71,6 +71,12 @@ paths: in: header required: false type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -91,7 +97,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 schema: type: array items: @@ -155,6 +167,12 @@ paths: in: header required: false type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -176,7 +194,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 schema: properties: Alarm: @@ -237,6 +261,12 @@ paths: required: true type: string enum: ["application/merge-patch+json"] + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -258,7 +288,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 schema: properties: AlarmModifications: @@ -319,7 +355,13 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string - name: "body" in: "body" required: true @@ -362,7 +404,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 303: $ref: "responses/SOL005_resp.yaml#/responses/303" 400: @@ -424,6 +472,12 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -446,7 +500,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 schema: type: array items: @@ -516,6 +576,12 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -540,6 +606,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 schema: properties: FmSubscription: @@ -572,6 +644,12 @@ paths: in: header required: false type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -588,6 +666,12 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -646,6 +730,12 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -661,7 +751,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -710,6 +806,12 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -725,7 +827,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -774,6 +882,12 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > @@ -789,7 +903,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -821,6 +941,12 @@ paths: in: header required: false type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > -- GitLab From 875bd4d79d7dc41942e3bc1cc822bd41e058fce3 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Wed, 27 Mar 2019 16:17:50 +0100 Subject: [PATCH 03/93] SOL005_8: Link and nextpage_opaque_marker added in NS mgmt and NS performarce mgmt GET requests + code formatting --- src/SOL005/NSDManagement/NSDManagement.yaml | 1341 ++++---- .../SOL005NSDescriptorManagement_def.yaml | 1742 +++++----- .../NSDManagement/definitions/SOL005_def.yaml | 200 +- .../NSDescriptorManagement_resp.yaml | 584 ++-- .../NSDManagement/responses/SOL005_resp.yaml | 804 ++--- .../NSFaultManagement/NSFaultManagement.yaml | 214 +- .../SOL005NSFaultManagement_def.yaml | 88 +- .../definitions/SOL005_def.yaml | 538 ++-- .../responses/NSFManagement_resp.yaml | 2 +- .../responses/SOL005_resp.yaml | 390 +-- .../NSLifecycleManagement.yaml | 786 ++--- .../NSLifecycleManagement_def.yaml | 52 +- .../SOL005NSLifecycleManagement_def.yaml | 2850 ++++++++--------- .../definitions/SOL005_def.yaml | 1212 +++---- .../responses/NSLifecycleManagement_resp.yaml | 380 +-- .../responses/SOL005_resp.yaml | 802 ++--- .../NSPerformanceManagement.yaml | 746 +++-- .../NSPerfomananceManagement_def.yaml | 10 +- .../SOL005NSPerfomananceManagement_def.yaml | 80 +- .../definitions/SOL005_def.yaml | 470 +-- .../responses/SOL005_resp.yaml | 490 +-- .../VNFPackageManagement.yaml | 912 +++--- .../SOL005VNFPMManagement_def.yaml | 140 +- .../definitions/SOL005_def.yaml | 426 +-- .../responses/SOL005_resp.yaml | 824 ++--- .../responses/VNFPackageManagement_resp.yaml | 582 ++-- 26 files changed, 8467 insertions(+), 8198 deletions(-) diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index d46533a..508e78c 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -13,74 +13,81 @@ info: license: name: "ETSI Forge copyright notice" url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - contact: + contact: name: "NFV-SOL WG" externalDocs: description: ETSI GS NFV-SOL 005 V2.4.1 url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf basePath: "/nsd/v1" schemes: - - https + - https consumes: -- "application/json" + - "application/json" produces: -- "application/json" + - "application/json" paths: -############################################################################### -# NS Descriptors # -############################################################################### + ############################################################################### + # NS Descriptors # + ############################################################################### '/ns_descriptors': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.2 get: summary: Query information about multiple NS descriptor resources. - description: > - "The GET method queries information about multiple NS descriptor resources. + description: > + The GET method queries information about multiple NS descriptor resources. This method shall follow the provisions specified in the Tables 5.4.2.3.2-1 and 5.4.2.3.2-2 for URI query parameters, - request and response data structures, and response codes." + request and response data structures, and response codes. parameters: - - name: "filter" - in: "query" + - name: filter + in: query required: false - type: "string" - description: > - "Attribute-based filtering parameters according to clause 4.3.2. + type: string + description: > + Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. All attribute names that appear in the NsdInfo and in data types referenced from - it shall be supported in attribute-based filtering parameters." - - name: "all_fields" - in: "query" + it shall be supported in attribute-based filtering parameters. + - name: all_fields + in: query required: false - type: "string" - description: > - "Include all complex attributes in the response. See clause 4.3.3 for details. - The NFVO shall support this parameter." - - name: "fields" - in: "query" + type: string + description: > + Include all complex attributes in the response. See clause 4.3.3 for details. + The NFVO shall support this parameter. + - name: fields + in: query required: false - type: "string" - description: > - "Complex attributes to be included into the response. See clause 4.3.3 for - details. The NFVO should support this parameter." - - name: "exclude_fields" - in: "query" + type: string + description: > + Complex attributes to be included into the response. See clause 4.3.3 for + details. The NFVO should support this parameter. + - name: exclude_fields + in: query required: false - type: "string" - description: > - "Complex attributes to be excluded from the response. See clause 4.3.3 for - details. The NFVO should support this parameter." - - name: "exclude_default" - in: "query" + type: string + description: > + Complex attributes to be excluded from the response. See clause 4.3.3 for + details. The NFVO should support this parameter. + - name: exclude_default + in: query required: false - type: "string" - description: > - "Indicates to exclude the following complex attributes from the response. See + type: string + description: > + Indicates to exclude the following complex attributes from the response. See clause 4.3.3 for details. The VNFM shall support this parameter. The following attributes shall be excluded from the NsdInfo structure in the response body if this parameter is provided, or none of the parameters "all_fields," "fields", "exclude_fields", "exclude_default" are provided: - userDefinedData." + userDefinedData. + - name: nextpage_opaque_marker + in: query + description: > + Marker to obtain the next page of a paged response. Shall be supported by the NFVO + if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. + required: false + type: string - name: Accept description: > Content-Types that are acceptable for the response. @@ -105,7 +112,7 @@ paths: 200: description: > 200 OK - + Information about zero or more NS descriptors. The response body shall contain a representation of zero or more NS descriptors, as defined in @@ -117,7 +124,7 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -130,12 +137,18 @@ paths: type: string maximum: 1 minimum: 1 + Link: + description: > + Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. + type: string + maximum: 1 + minimum: 0 schema: type: array items: properties: NsdInfo: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -151,62 +164,62 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" post: summary: Create a new NS descriptor resource. - description: > + description: > The POST method is used to create a new NS descriptor resource or a new version of an on-boarded NS descriptor. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "CreateNsdInfoRequest" - properties: - CreateNsdInfoRequest: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreateNsdInfoRequest" - description: > - Parameters of creating an NS descriptor resource, as defined in clause 5.5.2.3 + parameters: + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + - name: body + in: body + required: true + schema: + type: object + required: + - CreateNsdInfoRequest + properties: + CreateNsdInfoRequest: + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreateNsdInfoRequest" + description: > + Parameters of creating an NS descriptor resource, as defined in clause 5.5.2.3 responses: 201: description: > Status 201 - + An NS descriptor resource was created successfully, as a new NS descriptor resource. The response body shall contain a representation of the new NS descriptor resource, as defined in clause 5.5.2.3 of GS NFV-SOL 005. @@ -214,19 +227,19 @@ paths: HTTP header that contains the resource URI of the new NS descriptor resource. schema: - type: "object" + type: object properties: NsdInfo: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -254,45 +267,45 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual NS Descriptor # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + + ############################################################################### + # Individual NS Descriptor # + ############################################################################### '/ns_descriptors/{nsdInfoId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.3 parameters: - - name: "nsdInfoId" + - name: nsdInfoId description: > Identifier of the individual NS descriptor resource. - in: "path" + in: path required: true - type: "string" + type: string get: summary: Read information about an individual NS descriptor resource. - description: > - "The GET method reads information about an individual NS descriptor. + description: > + The GET method reads information about an individual NS descriptor. This method shall follow the provisions specified in GS NFV-SOL 005 Tables 5.4.3.3.2-1 and 5.4.3.3.2-2 of GS NFV-SOL 005 for URI query parameters, - request and response data structures, and response codes." + request and response data structures, and response codes. parameters: - name: Accept description: > Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string - name: Authorization description: > The authorization token for the request. - Reference: IETF RFC 7235 + Reference: IETF RFC 7235. in: header required: false type: string @@ -306,23 +319,23 @@ paths: 200: description: > 200 OK - + Information about the individual NS descriptor. The response body shall contain a representation of the individual NS descriptor. schema: - type: "object" + type: object properties: NsdInfo: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -350,7 +363,7 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: @@ -359,7 +372,7 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/503" patch: summary: Modify the operational state and/or the user defined data of an individual NS descriptor resource. - description: > + description: > The PATCH method modifies the operational state and/or user defined data of an individual NS descriptor resource. This method can be used to: 1) Enable a previously disabled individual NS descriptor resource, allowing @@ -370,43 +383,43 @@ paths: The usage state (i.e. "IN_USE/NOT_IN_USE") shall not changes a result. 3) Modify the user defined data of an individual NS descriptor resource. parameters: - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "NsdInfoModifications" - properties: - NsdInfoModifications: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfoModifications" - description: > - Parameters for the modification of an individual NS descriptor resource. - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string - responses: + - name: body + in: body + required: true + schema: + type: object + required: + - NsdInfoModifications + properties: + NsdInfoModifications: + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfoModifications" + description: > + Parameters for the modification of an individual NS descriptor resource. + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235. + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: 200: description: > 200 OK - + The operation was completed successfully. The response body shall contain attribute modifications for an 'Individual NS Descriptor' @@ -418,7 +431,7 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -435,7 +448,7 @@ paths: type: array items: properties: - NsdInfoModifications: + NsdInfoModifications: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfoModifications" 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" @@ -452,17 +465,17 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + delete: summary: Delete an individual NS descriptor resource. - description: > + description: > The DELETE method deletes an individual NS descriptor resource. An individual NS descriptor resource can only be deleted when there is no NS instance using it (i.e. usageState = NOT_IN_USE) and has been disabled already (i.e. operationalState = DISABLED). Otherwise, the DELETE method @@ -483,14 +496,14 @@ paths: type: string responses: 204: - description: > + description: > 204 No Content - + The operation has completed successfully. The response body shall be empty. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -518,28 +531,28 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - - -############################################################################### -# NSD Content # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + + + ############################################################################### + # NSD Content # + ############################################################################### '/ns_descriptors/{nsdInfoId}/nsd_content': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.4 parameters: - - name: "nsdInfoId" - in: "path" + - name: nsdInfoId + in: path required: true - type: "string" + type: string get: summary: Fetch the content of a NSD. - description: > + description: > The GET method fetches the content of the NSD. The NSD can be implemented as a single file or as a collection of multiple files. If the NSD is implemented in the form of multiple files, a ZIP file embedding @@ -556,44 +569,44 @@ paths: for a multi-file NSD, a ZIP file shall be returned.NOTE: The structure of the NSD zip file is outside the scope of the present document. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - in: header - required: true - type: string - enum: - - text/plain - - application/zip - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: "Range" - in: "header" - required: false - type: "string" - description: > - "The request may contain a "Range" HTTP header to obtain single - range of bytes from the NSD file. This can be used to continue an aborted - transmission.If the NFVO does not support range requests, the NFVO - shall ignore the 'Range" header, process the GET request, and return - the whole NSD file with a 200 OK response (rather than returning a 4xx - error status code)." - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: Accept + description: > + Content-Types that are acceptable for the response. + in: header + required: true + type: string + enum: + - text/plain + - application/zip + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235. + in: header + required: false + type: string + - name: Range + in: header + required: false + type: string + description: > + "The request may contain a "Range" HTTP header to obtain single + range of bytes from the NSD file. This can be used to continue an aborted + transmission.If the NFVO does not support range requests, the NFVO + shall ignore the 'Range" header, process the GET request, and return + the whole NSD file with a 200 OK response (rather than returning a 4xx + error status code)." + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: - description: > + description: > 200 OK - + On success, the content of the NSD is returned. The payload body shall contain a copy of the file representing the NSD or a ZIP file that contains the file @@ -610,7 +623,7 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -640,17 +653,17 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-nsd-onboarding-state-NOT-ONBOARDED" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + put: summary: Upload the content of a NSD. - description: > + description: > "The PUT method is used to upload the content of a NSD. The NSD to be uploaded can be implemented as a single file or as a collection of multiple files, as defined in clause 5.4.4.3.2 of GS NFV-SOL 005. @@ -668,39 +681,39 @@ paths: of GS-NFV-SOL 005 for URI query parameters, request and response data structures, and response codes." parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - The payload body contains a copy of the file representing the NSD - or a ZIP file that contains the file or multiple files representing the NSD. - in: header - required: true - type: string - enum: - - text/plain - - application/zip - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: Accept + description: > + Content-Types that are acceptable for the response. + The payload body contains a copy of the file representing the NSD + or a ZIP file that contains the file or multiple files representing the NSD. + in: header + required: true + type: string + enum: + - text/plain + - application/zip + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 202: - description: > + description: > 202 Accepted - + The NSD content was accepted for uploading, but the processing has not been completed. It is expected to take some time for processing (asynchronous mode). - + The response body shall be empty. headers: Content-Type: @@ -709,7 +722,7 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -723,9 +736,9 @@ paths: maximum: 1 minimum: 1 204: - description: > + description: > 204 No Content - + The NSD content was successfully uploaded and validated (synchronous mode). The response body shall be empty. 206: @@ -745,79 +758,86 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-nsd-onboarding-state-NOT-ONBOARDED" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - - -############################################################################### -# PNF Descriptors # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + + + ############################################################################### + # PNF Descriptors # + ############################################################################### '/pnf_descriptors': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.5 get: summary: Query information about multiple PNF descriptor resources. - description: > + description: > "The GET method queries information about multiple PNF descriptor resources." parameters: - - name: "filter" - in: "query" - required: false - type: "string" - description: > - Attribute-based filtering parameters according to clause 4.3.2. - The NFVO shall support receiving filtering parameters as part of the URI - query string. The OSS/BSS may supply filtering parameters. - All attribute names that appear in the PnfdInfo and in data types referenced - from it shall be supported in attribute-based filtering parameters. - - name: "all_fields" - in: "query" - required: false - type: "string" - description: > - Include all complex attributes in the response. See clause 4.3.3 for details. - The NFVO shall support this parameter. - - name: "fields" - in: "query" - required: false - type: "string" - description: > - Complex attributes to be included into the response. See clause 4.3.3 for - details. The NFVO should support this parameter. - - name: "exclude_fields" - in: "query" - required: false - type: "string" - description: > - Complex attributes to be excluded from the response. See clause 4.3.3 for - details. The NFVO should support this parameter. - - name: "exclude_default" - in: "query" - required: false - type: "string" - description: > - Indicates to exclude the following complex attributes from the response. See - clause 4.3.3 for details. The NFVO shall support this parameter. - The following attributes shall be excluded from the PnfdInfo structure in the - response body if this parameter is provided, or none of the parameters - "all_fields," "fields", "exclude_fields", "exclude_default" are provided: - userDefinedData. - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: filter + in: query + required: false + type: string + description: > + Attribute-based filtering parameters according to clause 4.3.2. + The NFVO shall support receiving filtering parameters as part of the URI + query string. The OSS/BSS may supply filtering parameters. + All attribute names that appear in the PnfdInfo and in data types referenced + from it shall be supported in attribute-based filtering parameters. + - name: all_fields + in: query + required: false + type: string + description: > + Include all complex attributes in the response. See clause 4.3.3 for details. + The NFVO shall support this parameter. + - name: fields + in: query + required: false + type: string + description: > + Complex attributes to be included into the response. See clause 4.3.3 for + details. The NFVO should support this parameter. + - name: exclude_fields + in: query + required: false + type: string + description: > + Complex attributes to be excluded from the response. See clause 4.3.3 for + details. The NFVO should support this parameter. + - name: exclude_default + in: query + required: false + type: string + description: > + Indicates to exclude the following complex attributes from the response. See + clause 4.3.3 for details. The NFVO shall support this parameter. + The following attributes shall be excluded from the PnfdInfo structure in the + response body if this parameter is provided, or none of the parameters + "all_fields," "fields", "exclude_fields", "exclude_default" are provided: + userDefinedData. + - name: nextpage_opaque_marker + in: query + type: string + required: false + description: > + Marker to obtain the next page of a paged response. Shall be supported by the NFVO + if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: - description: > + description: > 200 OK - + Information about zero or more PNF descriptors. The response body shall contain a representation of zero or more PNF descriptors, as defined in @@ -829,7 +849,7 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -842,8 +862,14 @@ paths: type: string maximum: 1 minimum: 1 + Link: + description: > + Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. + type: string + maximum: 1 + minimum: 0 schema: - type: "array" + type: array items: properties: PnfdInfo: @@ -863,62 +889,62 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" post: summary: Create a new PNF descriptor resource. - description: > + description: > The POST method is used to create a new PNF descriptor resource parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "CreatePnfdInfoRequest" - properties: - CreatePnfdInfoRequest: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreatePnfdInfoRequest" - description: > - Parameters of creating a PNF descriptor resource. - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string - responses: + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: body + in: body + required: true + schema: + type: object + required: + - CreatePnfdInfoRequest + properties: + CreatePnfdInfoRequest: + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreatePnfdInfoRequest" + description: > + Parameters of creating a PNF descriptor resource. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: 201: description: > 201 Created - + A PNF descriptor resource was created successfully, as a new PNF descriptor resource. The response body shall contain a representation of the new PNF descriptor resource, as defined in @@ -927,19 +953,19 @@ paths: header that contains the resource URI of the new PNF descriptor resource. schema: - type: "object" + type: object properties: PnfdInfo: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -969,59 +995,59 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Individual PNF Descriptor # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + ############################################################################### + # Individual PNF Descriptor # + ############################################################################### '/pnf_descriptors/{pnfdInfoId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.6 parameters: - - name: "pnfdInfoId" + - name: pnfdInfoId description: > Identifier of the individual PNF descriptor resource. - in: "path" + in: path required: true - type: "string" + type: string get: summary: Read an individual PNFD resource. - description: > + description: > The GET method reads information about an individual PNF descriptor. This method shall follow the provisions specified in the Tables 5.4.6.3.2-1 and 5.4.6.3.2-2 of GS NFV-SOL 005 for URI query parameters, request and response data structures, and response codes. parameters: - - name: "Accept" - in: "header" - required: true - type: "string" - description: > - Content-Types that are acceptable for the response. This header - field shall be present if the response is expected to have a non-empty - message body. - - name: "Authorization" - in: "header" - required: false - type: "string" - description: > - The authorization token for the request. Details are specified - in clause 4.5.3 of GS NFV-SOL 005. - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: Accept + in: header + required: true + type: string + description: > + Content-Types that are acceptable for the response. This header + field shall be present if the response is expected to have a non-empty + message body. + - name: Authorization + in: header + required: false + type: string + description: > + The authorization token for the request. Details are specified + in clause 4.5.3 of GS NFV-SOL 005. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: - description: > + description: > 200 OK - + Information about the individual PNFD descriptor. The response body shall contain a representation of the individual PNF descriptor. @@ -1032,7 +1058,7 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -1046,7 +1072,7 @@ paths: maximum: 1 minimum: 1 schema: - type: "object" + type: object properties: PnfdInfo: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo" @@ -1065,16 +1091,16 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" delete: summary: Delete an individual PNF descriptor resource. - description: > + description: > The DELETE method deletes an individual PNF descriptor resource. An individual PNF descriptor resource can only be deleted when there is no NS instance using it or there is NSD referencing it. @@ -1083,9 +1109,9 @@ paths: PNFD. Then, the client uses the DELETE method described in this clause to delete each PNFD version individually. responses: 204: - description: > + description: > 204 No Content - + The operation has completed successfully. The response body shall be empty. 206: @@ -1105,7 +1131,7 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: @@ -1114,70 +1140,70 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/503" patch: summary: Modify the user defined data of an individual PNF descriptor resource. - description: > + description: > The PATCH method modifies the user defined data of an individual PNF descriptor resource. - parameters: - - name: "Accept" - in: "header" - required: true - type: "string" - description: > - Content-Types that are acceptable for the response. This header - field shall be present if the response is expected to have a non-empty - message body. - - name: "Content-Type" - in: "header" - required: true - type: "string" - description: > - The MIME type of the body of the request. This header field - shall be present if the request has a non-empty message body. - - name: "Authorization" - in: "header" - required: false - type: "string" - description: > - The authorization token for the request. Details are specified in clause 4.5.3. - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "PnfdInfoModifications" - properties: - PnfdInfoModifications: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications" - description: > - Parameters for the modification of an individual PNF descriptor resource, as defined in clause 5.5.2.4. + parameters: + - name: Accept + in: header + required: true + type: string + description: > + Content-Types that are acceptable for the response. This header + field shall be present if the response is expected to have a non-empty + message body. + - name: Content-Type + in: header + required: true + type: string + description: > + The MIME type of the body of the request. This header field + shall be present if the request has a non-empty message body. + - name: Authorization + in: header + required: false + type: string + description: > + The authorization token for the request. Details are specified in clause 4.5.3. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + - name: body + in: body + required: true + schema: + type: object + required: + - PnfdInfoModifications + properties: + PnfdInfoModifications: + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications" + description: > + Parameters for the modification of an individual PNF descriptor resource, as defined in clause 5.5.2.4. responses: 200: description: > 200 OK - + The operation was completed successfully. The response body shall contain attribute modifications for an 'Individual PNF Descriptor' resource. schema: - type: "object" + type: object properties: PnfdInfoModifications: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -1207,61 +1233,61 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + -############################################################################### -# PNFD Content # -############################################################################### + ############################################################################### + # PNFD Content # + ############################################################################### '/pnf_descriptors/{pnfdInfoId}/pnfd_content': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.7 parameters: - - name: "pnfdInfoId" + - name: pnfdInfoId description: > Identifier of the individual PNF descriptor. - in: "path" + in: path required: true - type: "string" + type: string get: summary: Fetch the content of a PNFD. - description: > + description: > The GET method fetches the content of the PNFD. This method shall follow the provisions specified in the Table 5.4.7.3.2-2 for URI query parameters, request and response data structures, and response codes. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - in: header - required: true - type: string - enum: - - text/plain - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: Accept + description: > + Content-Types that are acceptable for the response. + in: header + required: true + type: string + enum: + - text/plain + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: - description: > + description: > 200 OK - + On success, the content of the PNFD is returned. The payload body shall contain a copy of the file representing the PNFD. The Content-Type" HTTP header shall be set to "text/plain". @@ -1272,7 +1298,7 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -1300,48 +1326,48 @@ paths: 406: $ref: "responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-pnfd-onboarding-state-NOT-ONBOARDED" + $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-pnfd-onboarding-state-NOT-ONBOARDED" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" put: summary: Upload the content of a PNFD. - description: > + description: > The PUT method is used to upload the content of a PNFD. This resource represents the content of the individual PNF descriptor, i.e. PNFD content. The client can use this resource to upload and download the content of the PNFD. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - in: header - required: true - type: string - enum: - - text/plain - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: Accept + description: > + Content-Types that are acceptable for the response. + in: header + required: true + type: string + enum: + - text/plain + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: - description: > + description: > 204 No Content - + The PNFD content was successfully uploaded and validated. The response body shall be empty. 206: @@ -1361,7 +1387,7 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-pnfd-onboarding-state-NOT-CREATED" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: @@ -1369,33 +1395,40 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Subscriptions # -############################################################################### + ############################################################################### + # Subscriptions # + ############################################################################### '/subscriptions': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.8 get: summary: Query multiple subscriptions. - description: > + description: > The GET method queries the list of active subscriptions of the functional block that invokes the method. It can be used e.g. for resynchronization after error situations. This method shall support the URI query parameters, request and response data structures, and response codes. - + This resource represents subscriptions. The client can use this resource to subscribe to notifications related to NSD management and to query its subscriptions. parameters: - - name: "filter" - in: "query" + - name: filter + in: query required: false - type: "string" - description: > + type: string + description: > Attribute filtering parameters according to clause 4.3.2. The NFVO shall support receiving attribute filter parameters as part of the URI query string. The OSS/BSS may supply an attribute filter. All attribute names that appear in the NsdmSubscription and in data types referenced from it shall be supported in attribute filter parameters. + - name: nextpage_opaque_marker + in: query + required: false + type: string + description: > + Marker to obtain the next page of a paged response. Shall be supported by the NFVO + if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. - name: Accept description: > Content-Types that are acceptable for the response. @@ -1418,9 +1451,9 @@ paths: type: string responses: 200: - description: > + description: > 200 OK - + The list of subscriptions was queried successfully. The response body shall contain the representations of all active subscriptions of the functional block that @@ -1432,7 +1465,7 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -1445,14 +1478,20 @@ paths: type: string maximum: 1 minimum: 1 + Link: + description: > + Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. + type: string + maximum: 1 + minimum: 0 schema: - type: "array" - items: + type: array + items: properties: NsdmSubscription: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" 303: - description: > + description: > 303 See Other. A subscription with the same callbackURI and the same filter already exits and the policy of the NFVO is @@ -1478,17 +1517,17 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - + post: summary: Subscribe to NSD and PNFD change notifications. - description: > + description: > The POST method creates a new subscription. This method shall support the URI query parameters, request and response data structures, and response codes, as specified in the Tables 5.4.8.3.1-1 and 5.4.8.3.1-2 @@ -1502,73 +1541,73 @@ paths: resource (in which case it shall return a "303 See Other" response code referencing the existing subscription resource with the same filter and callbackUri). - + This resource represents subscriptions. The client can use this resource to subscribe to notifications related to NSD management and to query its subscriptions. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "NsdmSubscriptionRequest" - properties: - NsdmSubscriptionRequest: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscriptionRequest" - description: > - Details of the subscription to be created, as defined in clause 5.5.2.7. + parameters: + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + - name: body + in: body + required: true + schema: + type: object + required: + - NsdmSubscriptionRequest + properties: + NsdmSubscriptionRequest: + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscriptionRequest" + description: > + Details of the subscription to be created, as defined in clause 5.5.2.7. responses: 201: description: > 201 Created - + The subscription was created successfully. The response body shall contain a representation of the created subscription resource. The HTTP response shall include a "Location:" HTTP header that points to the created subscription resource. schema: - type: "object" + type: object properties: NsdmSubscription: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -1598,59 +1637,59 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual Subscription # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + + ############################################################################### + # Individual Subscription # + ############################################################################### '/subscriptions/{subscriptionId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.9 parameters: - - name: "subscriptionId" + - name: subscriptionId description: Identifier of this subscription. - in: "path" + in: path required: true - type: "string" + type: string get: summary: Read an individual subscription resource. description: > This resource represents an individual subscription. It can be used by the client to read and to terminate a subscription to notifications related to NSD management. - + The GET method retrieves information about a subscription by reading an individual subscription resource. This resource represents an individual subscription. It can be used by the client to read and to terminate a subscription to notifications related to NSD management. parameters: - - name: "Accept" - in: "header" - required: true - type: "string" - description: > - Content-Types that are acceptable for the response. This header - field shall be present if the response is expected to have a non-empty - message body. - - name: "Authorization" - in: "header" - required: false - type: "string" - description: > - The authorization token for the request. Details are specified - in clause 4.5.3 of GS NFV-SOL 005. - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: Accept + in: header + required: true + type: string + description: > + Content-Types that are acceptable for the response. This header + field shall be present if the response is expected to have a non-empty + message body. + - name: Authorization + in: header + required: false + type: string + description: > + The authorization token for the request. Details are specified + in clause 4.5.3 of GS NFV-SOL 005. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > @@ -1660,18 +1699,18 @@ paths: The response body shall contain a representation of the subscription resource. schema: - type: "object" + type: object properties: NsdmSubscription: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response. This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -1699,43 +1738,43 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" delete: summary: Terminate Subscription description: > This resource represents an individual subscription. It can be used by the client to read and to terminate a subscription to notifications related to NSD management. - + The DELETE method terminates an individual subscription. This method shall support the URI query parameters, request and response data structures, and response codes, as specified in the Table 5.4.9.3.3-2. parameters: - - name: "Authorization" - in: "header" - required: false - type: "string" - description: > - The authorization token for the request. - Details are specified in clause 4.5.3 of GS NFV-SOL 005. - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: Authorization + in: header + required: false + type: string + description: > + The authorization token for the request. + Details are specified in clause 4.5.3 of GS NFV-SOL 005. + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > 204 No Content - + The subscription resource was deleted successfully. The response body shall be empty. 400: @@ -1753,19 +1792,19 @@ paths: 409: $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005_resp.yaml#/responses/412" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - -################################################################################## -# Notification endpoint # -# Dummy URI is used for testing. # -# In real, resource URI is provided by the client when creating the subscription.# -################################################################################## + $ref: "responses/SOL005_resp.yaml#/responses/503" + + ################################################################################## + # Notification endpoint # + # Dummy URI is used for testing. # + # In real, resource URI is provided by the client when creating the subscription.# + ################################################################################## '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdOnBoardingNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 post: @@ -1774,7 +1813,7 @@ paths: This resource represents a notification endpoint. The server can use this resource to send notifications to a subscribed client, which has provided the URI of this resource during the subscription process. - + The POST method delivers a notification from the server to the client. This method shall support the URI query parameters, request and response data structures, and response codes, as @@ -1788,7 +1827,7 @@ paths: schema: properties: NsdOnBoardingNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -1820,11 +1859,11 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -1856,8 +1895,8 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdOnBoardingFailureNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 post: @@ -1866,7 +1905,7 @@ paths: This resource represents a notification endpoint. The server can use this resource to send notifications to a subscribed client, which has provided the URI of this resource during the subscription process. - + The POST method delivers a notification from the server to the client. This method shall support the URI query parameters, request and response data structures, and response codes, as @@ -1879,8 +1918,8 @@ paths: required: true schema: properties: - NsdOnBoardingFailureNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingFailureNotification" + NsdOnBoardingFailureNotification: + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingFailureNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -1912,11 +1951,11 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -1949,7 +1988,7 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - + '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdChangeNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 @@ -1959,7 +1998,7 @@ paths: This resource represents a notification endpoint. The server can use this resource to send notifications to a subscribed client, which has provided the URI of this resource during the subscription process. - + The POST method delivers a notification from the server to the client. This method shall support the URI query parameters, request and response data structures, and response codes, as @@ -1972,8 +2011,8 @@ paths: required: true schema: properties: - NsdChangeNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdChangeNotification" + NsdChangeNotification: + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdChangeNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -2005,11 +2044,11 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -2051,7 +2090,7 @@ paths: This resource represents a notification endpoint. The server can use this resource to send notifications to a subscribed client, which has provided the URI of this resource during the subscription process. - + The POST method delivers a notification from the server to the client. This method shall support the URI query parameters, request and response data structures, and response codes, as @@ -2065,7 +2104,7 @@ paths: schema: properties: NsdDeletionNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdDeletionNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdDeletionNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -2097,11 +2136,11 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -2143,7 +2182,7 @@ paths: This resource represents a notification endpoint. The server can use this resource to send notifications to a subscribed client, which has provided the URI of this resource during the subscription process. - + The POST method delivers a notification from the server to the client. This method shall support the URI query parameters, request and response data structures, and response codes, as @@ -2156,7 +2195,7 @@ paths: required: true schema: properties: - PnfdOnBoardingNotification: + PnfdOnBoardingNotification: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdOnBoardingNotification" - name: Accept description: > @@ -2189,11 +2228,11 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -2235,7 +2274,7 @@ paths: This resource represents a notification endpoint. The server can use this resource to send notifications to a subscribed client, which has provided the URI of this resource during the subscription process. - + The POST method delivers a notification from the server to the client. This method shall support the URI query parameters, request and response data structures, and response codes, as @@ -2248,7 +2287,7 @@ paths: required: true schema: properties: - PnfdOnBoardingFailureNotification: + PnfdOnBoardingFailureNotification: $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdOnBoardingFailureNotification" - name: Accept description: > @@ -2281,11 +2320,11 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -2327,7 +2366,7 @@ paths: This resource represents a notification endpoint. The server can use this resource to send notifications to a subscribed client, which has provided the URI of this resource during the subscription process. - + The POST method delivers a notification from the server to the client. This method shall support the URI query parameters, request and response data structures, and response codes, as @@ -2340,8 +2379,8 @@ paths: required: true schema: properties: - PnfdDeletionNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdDeletionNotification" + PnfdDeletionNotification: + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdDeletionNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -2373,11 +2412,11 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -2410,14 +2449,14 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - + get: summary: Test the notification endpoint description: > This resource represents a notification endpoint. The server can use this resource to send notifications to a subscribed client, which has provided the URI of this resource during the subscription process. - + The GET method allows the server to test the notification endpoint that is provided by the client, e.g. during subscription. This method shall follow the provisions specified in the Table 5.4.10.3.2-2 for URI query parameters, @@ -2447,12 +2486,12 @@ paths: 204: description: > 204 No Content - + The notification endpoint was tested successfully. The response body shall be empty. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request diff --git a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml index 702a0c7..0ad2c99 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml @@ -1,884 +1,884 @@ - definitions: - NsdInfo: - type: "object" - required: - - "id" +definitions: + NsdInfo: + type: "object" + required: + - "id" - "nsdOnboardingState" - "nsdOperationalState" - "nsdUsageState" - "_links" - properties: - id: - description: > - Identifier of the on boarded individual NS descriptor - resource. This identifier is allocated by the NFVO. + properties: + id: + description: > + Identifier of the on boarded individual NS descriptor + resource. This identifier is allocated by the NFVO. + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdId: + description: > + This identifier, which is allocated by the NSD + designer, identifies the NSD in a globally unique + way. It is copied from the NSD content and shall be + present after the NSD content is on-boarded. + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdName: + type: "string" + description: > + "Name of the on boarded NSD. This information is copied from the + NSD content and shall be present after the NSD content is on-boarded." + nsdVersion: + description: > + Version of the on-boarded NSD. This information is + copied from the NSD content and shall be present + after the NSD content is on-boarded. + $ref: "SOL005_def.yaml#/definitions/Version" + nsdDesigner: + type: "string" + description: > + "Designer of the on-boarded NSD. This information is copied + from the NSD content and shall be present after the NSD content is on-boarded." + nsdInvariantId: + description: > + This identifier, which is allocated by the NSD + designer, identifies an NSD in a version independent + manner. This information is copied from the NSD + content and shall be present after the NSD content is + on-boarded. + $ref: "SOL005_def.yaml#/definitions/Identifier" + vnfPkgIds: + description: > + Identifies the VNF package for the VNFD referenced + by the on-boarded NS descriptor resource. + type: array + items: $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdId: - description: > - This identifier, which is allocated by the NSD - designer, identifies the NSD in a globally unique - way. It is copied from the NSD content and shall be - present after the NSD content is on-boarded. + pnfdInfoIds: + description: > + Identifies the PnfdInfo element for the PNFD + referenced by the on-boarded NS descriptor + resource. + type: array + items: $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdName: - type: "string" - description: > - "Name of the on boarded NSD. This information is copied from the - NSD content and shall be present after the NSD content is on-boarded." - nsdVersion: - description: > - Version of the on-boarded NSD. This information is - copied from the NSD content and shall be present - after the NSD content is on-boarded. + nestedNsdInfoIds: + description: > + Identifies the NsdInfo element for the nested NSD + referenced by the on-boarded NS descriptor + resource. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdOnboardingState: + description: > + On boarding state of the individual NS descriptor resource. + $ref: "#/definitions/NsdOnboardingStateType" + onboardingFailureDetails: + description: > + Failure details of current on boarding procedure. See + clause 4.3.5.3 for the details of "ProblemDetails" + structure. + It shall be present when the "nsdOnboardingState" + attribute is CREATED and the uploading or + processing fails in NFVO. + $ref: "SOL005_def.yaml#/definitions/ProblemDetails" + nsdOperationalState: + description: > + Operational state of the individual NS descriptor + resource. This attribute can be modified with the + PATCH method. + $ref: "#/definitions/NsdOperationalStateType" + nsdUsageState: + description: > + Usage state of the individual NS descriptor resource. + $ref: "#/definitions/NsdUsageStateType" + userDefinedData: + description: > + User defined data for the individual NS descriptor + resource. This attribute can be modified with the + PATCH method. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + _links: + type: "object" + required: + - "self" + - "nsd_content" + description: > + "Links to resources related to this resource." + properties: + self: + description: > + "URI of this resource." + $ref: "SOL005_def.yaml#/definitions/Link" + nsd_content: + description: > + "Link to the NSD content resource" + $ref: "SOL005_def.yaml#/definitions/Link" + description: > + "This type represents a response for the query NSD operation." + + NsdInfoModifications: + type: "object" + description: > + This type represents attribute modifications for an individual NS + descriptor resource based on the NsdInfo data type. The attributes of + NsdInfo that can be modified are included in the NsdInfoModifications + data type.NOTE: At least one of the attributes - nsdOperationalState and + userDefinedData - shall be present. + properties: + nsdOperationalState: + $ref: "#/definitions/NsdOperationalStateType" + userDefinedData: + description: > + Modifications of the userDefinedData attribute in NsdInfo + data type. See note. If present, these modifications shall be applied + according to the rules of JSON Merge PATCH (see IETF RFC 7396 [25]). + NOTE- At least one of the attributes - nsdOperationalState and userDefinedData - shall be present. + type: "array" + items: + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + + nsdOperationalState: + description: > + "New value of the "nsdOperationalState" attribute in "NsdInfo" + data type. See note.Permitted values: + ENABLED, + DISABLED" + type: "array" + items: + $ref: "#/definitions/NsdInfoModifications" + + NsdmSubscription: + type: "object" + required: + - "id" + - "callbackUri" + - "_links" + properties: + id: + description: > + Identifier of this subscription resource. + $ref: "SOL005_def.yaml#/definitions/Identifier" + filter: + description: > + Filter settings for this subscription, to define the subset + of all notifications this subscription relates to. + A particular notification is sent to the subscriber if the filter + matches, or if there is no filter. + $ref: "#/definitions/NsdmNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "SOL005_def.yaml#/definitions/Uri" + _links: + type: "object" + description: > + Links to resources related to this resource. + properties: + self: + $ref: "SOL005_def.yaml#/definitions/Link" + description: > + This type represents a subscription related to notifications about NSD management. + + NsdmSubscriptionRequest: + type: "object" + required: + - "callbackUri" + properties: + filter: + $ref: "#/definitions/NsdmNotificationsFilter" + callbackUri: + type: "string" + description: > + The URI of the endpoint to send the notification to. + authentication: + $ref: "#/definitions/SubscriptionAuthentication" + description: > + This type represents a subscription request related to notifications + about NSD management. + NsdmNotificationsFilter: + type: "object" + description: > + "This type represents a subscription filter related to notifications + about NSD management. It shall comply with the provisions defined in Table + 5.5.3.2-1 of GS NFV-SOL 005. At a particular nesting level in the filter structure, + the following applies: All attributes shall match in order for the filter + to match (logical "and" between different filter attributes). If an attribute + is an array, the attribute shall match if at least one of the values in the + array matches (logical "or" between the values of one filter attribute)." + properties: + notificationTypes: + description: > + "Match particular notification types. Permitted values: NsdOnBoardingNotification, + NsdOnboardingFailureNotification, NsdChangeNotification, NsdDeletionNotification + PnfdOnBoardingNotification, PnfdOnBoardingFailureNotification, PnfdDeletionNotification. + The permitted values of the "notificationTypes" ] attribute are spelled + exactly as the names of the notification types to facilitate automated + code generation systems." + type: array + items: + type: string + enum: + - "NsdOnBoardingNotification" + - "NsdOnboardingFailureNotification" + - "NsdChangeNotification" + - "NsdDeletionNotification" + - "PnfdOnBoardingNotification" + - "PnfdOnBoardingFailureNotification" + - "PnfdDeletionNotification" + nsdInfoId: + description: > + Match the NsdInfo identifier which is allocated by the NFVO. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdId: + description: > + Match the NSD identifier, which is allocated by the NSD designer. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdName: + description: > + Match the name of the on boarded NSD. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/String" + nsdVersion: + description: > + Match the NSD version listed as part of this attribute. + type: array + items: $ref: "SOL005_def.yaml#/definitions/Version" - nsdDesigner: - type: "string" - description: > - "Designer of the on-boarded NSD. This information is copied - from the NSD content and shall be present after the NSD content is on-boarded." - nsdInvariantId: - description: > - This identifier, which is allocated by the NSD - designer, identifies an NSD in a version independent - manner. This information is copied from the NSD - content and shall be present after the NSD content is - on-boarded. + nsdDesigner: + description: > + "Match the NSD designer of the on-boarded NSD." + type: array + items: + $ref: "SOL005_def.yaml#/definitions/String" + nsdInvariantId: + description: > + Match the NSD invariant identifier which is allocated + by the NSD designer and identifies an NSD in a + version independent manner. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + vnfPkgIds: + description: > + Match VNF packages with a package identifier listed + in the attribute. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdInfoIds: + description: > + Match the PnfdInfo identifier for the PNFD + referenced by the on-boarded NSD. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nestedNsdInfoIds: + description: > + Match the NsdInfo identifier for the nested NSD + referenced by the on-boarded NSD. + type: array + items: $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfPkgIds: - description: > - Identifies the VNF package for the VNFD referenced - by the on-boarded NS descriptor resource. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdInfoIds: - description: > - Identifies the PnfdInfo element for the PNFD - referenced by the on-boarded NS descriptor - resource. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nestedNsdInfoIds: - description: > - Identifies the NsdInfo element for the nested NSD - referenced by the on-boarded NS descriptor - resource. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdOnboardingState: - description: > - On boarding state of the individual NS descriptor resource. + nsdOnboardingState: + description: > + Match particular on-boarding state of the NSD. + type: array + items: $ref: "#/definitions/NsdOnboardingStateType" - onboardingFailureDetails: - description: > - Failure details of current on boarding procedure. See - clause 4.3.5.3 for the details of "ProblemDetails" - structure. - It shall be present when the "nsdOnboardingState" - attribute is CREATED and the uploading or - processing fails in NFVO. - $ref: "SOL005_def.yaml#/definitions/ProblemDetails" - nsdOperationalState: - description: > - Operational state of the individual NS descriptor - resource. This attribute can be modified with the - PATCH method. + nsdOperationalState: + description: > + Match particular operational state of the on-boarded NSD. + type: array + items: $ref: "#/definitions/NsdOperationalStateType" - nsdUsageState: - description: > - Usage state of the individual NS descriptor resource. + nsdUsageState: + description: > + Match particular usage state of the on-boarded NSD. + type: array + items: $ref: "#/definitions/NsdUsageStateType" - userDefinedData: - description: > - User defined data for the individual NS descriptor - resource. This attribute can be modified with the - PATCH method. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - _links: - type: "object" - required: - - "self" - - "nsd_content" - description: > - "Links to resources related to this resource." - properties: - self: - description: > - "URI of this resource." - $ref: "SOL005_def.yaml#/definitions/Link" - nsd_content: - description: > - "Link to the NSD content resource" - $ref: "SOL005_def.yaml#/definitions/Link" - description: > - "This type represents a response for the query NSD operation." - - NsdInfoModifications: - type: "object" - description: > - This type represents attribute modifications for an individual NS - descriptor resource based on the NsdInfo data type. The attributes of - NsdInfo that can be modified are included in the NsdInfoModifications - data type.NOTE: At least one of the attributes - nsdOperationalState and - userDefinedData - shall be present. - properties: - nsdOperationalState: - $ref: "#/definitions/NsdOperationalStateType" - userDefinedData: - description: > - Modifications of the userDefinedData attribute in NsdInfo - data type. See note. If present, these modifications shall be applied - according to the rules of JSON Merge PATCH (see IETF RFC 7396 [25]). - NOTE- At least one of the attributes - nsdOperationalState and userDefinedData - shall be present. - type: "array" - items: - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - - nsdOperationalState: - description: > - "New value of the "nsdOperationalState" attribute in "NsdInfo" - data type. See note.Permitted values: - ENABLED, - DISABLED" - type: "array" - items: - $ref: "#/definitions/NsdInfoModifications" - - NsdmSubscription: - type: "object" - required: - - "id" - - "callbackUri" - - "_links" - properties: - id: - description: > - Identifier of this subscription resource. - $ref: "SOL005_def.yaml#/definitions/Identifier" - filter: - description: > - Filter settings for this subscription, to define the subset - of all notifications this subscription relates to. - A particular notification is sent to the subscriber if the filter - matches, or if there is no filter. - $ref: "#/definitions/NsdmNotificationsFilter" - callbackUri: - description: > - The URI of the endpoint to send the notification to. - $ref: "SOL005_def.yaml#/definitions/Uri" - _links: - type: "object" - description: > - Links to resources related to this resource. - properties: - self: - $ref: "SOL005_def.yaml#/definitions/Link" - description: > - This type represents a subscription related to notifications about NSD management. - - NsdmSubscriptionRequest: - type: "object" - required: - - "callbackUri" - properties: - filter: - $ref: "#/definitions/NsdmNotificationsFilter" - callbackUri: - type: "string" - description: > - The URI of the endpoint to send the notification to. - authentication: - $ref: "#/definitions/SubscriptionAuthentication" - description: > - This type represents a subscription request related to notifications - about NSD management. - NsdmNotificationsFilter: - type: "object" - description: > - "This type represents a subscription filter related to notifications - about NSD management. It shall comply with the provisions defined in Table - 5.5.3.2-1 of GS NFV-SOL 005. At a particular nesting level in the filter structure, - the following applies: All attributes shall match in order for the filter - to match (logical "and" between different filter attributes). If an attribute - is an array, the attribute shall match if at least one of the values in the - array matches (logical "or" between the values of one filter attribute)." - properties: - notificationTypes: - description: > - "Match particular notification types. Permitted values: NsdOnBoardingNotification, - NsdOnboardingFailureNotification, NsdChangeNotification, NsdDeletionNotification - PnfdOnBoardingNotification, PnfdOnBoardingFailureNotification, PnfdDeletionNotification. - The permitted values of the "notificationTypes" ] attribute are spelled - exactly as the names of the notification types to facilitate automated - code generation systems." - type: array - items: - type: string - enum: - - "NsdOnBoardingNotification" - - "NsdOnboardingFailureNotification" - - "NsdChangeNotification" - - "NsdDeletionNotification" - - "PnfdOnBoardingNotification" - - "PnfdOnBoardingFailureNotification" - - "PnfdDeletionNotification" - nsdInfoId: - description: > - Match the NsdInfo identifier which is allocated by the NFVO. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdId: - description: > - Match the NSD identifier, which is allocated by the NSD designer. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdName: - description: > - Match the name of the on boarded NSD. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/String" - nsdVersion: - description: > - Match the NSD version listed as part of this attribute. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Version" - nsdDesigner: - description: > - "Match the NSD designer of the on-boarded NSD." - type: array - items: - $ref: "SOL005_def.yaml#/definitions/String" - nsdInvariantId: - description: > - Match the NSD invariant identifier which is allocated - by the NSD designer and identifies an NSD in a - version independent manner. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfPkgIds: - description: > - Match VNF packages with a package identifier listed - in the attribute. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdInfoIds: - description: > - Match the PnfdInfo identifier for the PNFD - referenced by the on-boarded NSD. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nestedNsdInfoIds: - description: > - Match the NsdInfo identifier for the nested NSD - referenced by the on-boarded NSD. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdOnboardingState: - description: > - Match particular on-boarding state of the NSD. - type: array - items: - $ref: "#/definitions/NsdOnboardingStateType" - nsdOperationalState: - description: > - Match particular operational state of the on-boarded NSD. - type: array - items: - $ref: "#/definitions/NsdOperationalStateType" - nsdUsageState: - description: > - Match particular usage state of the on-boarded NSD. - type: array - items: - $ref: "#/definitions/NsdUsageStateType" - pnfdId: - description: > - Match the PNFD identifier which is copied from the PNFD content. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdName: - description: > - Match the name of the on-boarded PNFD. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/String" - pnfdVersion: - description: > - Match the PNFD designer of the on-boarded PNFD. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Version" - pnfdProvider: - description: > - Match the provider of the on-boarded PNFD. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/String" - pnfdInvariantId: - description: > - Match the PNFD in a version independent manner. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdOnboardingState: - description: > - Match particular on-boarding state of the PNFD. - type: array - items: - $ref: "#/definitions/PnfdOnboardingStateType" - pnfdUsageState: - description: > - Match the usage state of the individual PNF descriptor resource. - type: array - items: - $ref: "#/definitions/PnfdUsageStateType" - SubscriptionAuthentication: - description: > - The procedure defined in clause 4.5.2 allows an API consumer to - obtain authorization to perform API requests towards - the API producer, including subscription requests. - For sending the actual notifications matching a subscription, the API - producer needs to obtain separate authorization to actually send the notification to the API consumer. - If an API consumer requires the API producer to authorize for sending notifications to that API consumer, it shall - include in the subscription request a data structure that defines the authorization requirements, as defined in - Table 4.5.3.4-1. - type: "object" - required: - - "authType" - properties: - authType: - description: > - Defines the types of Authentication - Authorization the API consumer is willing to - accept when receiving a notification. - - Permitted values: + pnfdId: + description: > + Match the PNFD identifier which is copied from the PNFD content. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdName: + description: > + Match the name of the on-boarded PNFD. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/String" + pnfdVersion: + description: > + Match the PNFD designer of the on-boarded PNFD. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Version" + pnfdProvider: + description: > + Match the provider of the on-boarded PNFD. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/String" + pnfdInvariantId: + description: > + Match the PNFD in a version independent manner. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdOnboardingState: + description: > + Match particular on-boarding state of the PNFD. + type: array + items: + $ref: "#/definitions/PnfdOnboardingStateType" + pnfdUsageState: + description: > + Match the usage state of the individual PNF descriptor resource. + type: array + items: + $ref: "#/definitions/PnfdUsageStateType" + SubscriptionAuthentication: + description: > + The procedure defined in clause 4.5.2 allows an API consumer to + obtain authorization to perform API requests towards + the API producer, including subscription requests. + For sending the actual notifications matching a subscription, the API + producer needs to obtain separate authorization to actually send the notification to the API consumer. + If an API consumer requires the API producer to authorize for sending notifications to that API consumer, it shall + include in the subscription request a data structure that defines the authorization requirements, as defined in + Table 4.5.3.4-1. + type: "object" + required: + - "authType" + properties: + authType: + description: > + Defines the types of Authentication + Authorization the API consumer is willing to + accept when receiving a notification. + + Permitted values: + + BASIC: In every HTTP request to the + notification endpoint, use HTTP Basic + authentication with the client credentials. + + OAUTH2_CLIENT_CREDENTIALS: In every + HTTP request to the notification endpoint, use + an OAuth 2.0 Bearer token, obtained using the + client credentials grant type. - BASIC: In every HTTP request to the - notification endpoint, use HTTP Basic - authentication with the client credentials. - - OAUTH2_CLIENT_CREDENTIALS: In every - HTTP request to the notification endpoint, use - an OAuth 2.0 Bearer token, obtained using the - client credentials grant type. - - TLS_CERT: Every HTTP request to the - notification endpoint is sent over a mutually - authenticated TLS session. i.e. not only server - is authenticated, but also the client is - authenticated during the TLS tunnel setup + TLS_CERT: Every HTTP request to the + notification endpoint is sent over a mutually + authenticated TLS session. i.e. not only server + is authenticated, but also the client is + authenticated during the TLS tunnel setup + + type: string + enum: + - BASIC + - OAUTH2_CLIENT_CREDENTIALS + - TLS_CERT + paramsBasic: + type: "object" + description: > + Parameters for authentication/authorization using BASIC. + Shall be present if authType is "BASIC" and + the contained information has not been + provisioned out of band. Shall be absent otherwise. + properties: + userName: + description: > + Username to be used in HTTP Basic authentication. + Shall be present if it has not been provisioned out of band. + type: string + password: + description: > + Password to be used in HTTP Basic authentication. + Shall be present if it has not been provisioned out of band. + type: string + paramsOauth2ClientCredentials: + type: "object" + description: > + Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS. + Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the + contained information has not been provisioned out of band. + Shall be absent otherwise + properties: + clientId: + description: > + Client identifier to be used in the access token + request of the OAuth 2.0 client credentials + grant type. Shall be present if it has not been + provisioned out of band. + type: string + clientPassword: + description: > + Client password to be used in the access + token request of the OAuth 2.0 client + credentials grant type. Shall be present if it + has not been provisioned out of band. + type: string + tokenEndpoint: + description: > + The token endpoint from which the access + token can be obtained. Shall be present if it + has not been provisioned out of band. + $ref: "SOL005_def.yaml#/definitions/Uri" + + NsdOperationalStateType: + type: "string" + description: > + "The enumeration NsdOperationalStateType shall comply with the provisions + defined in Table 5.5.4.3-1 of GS NFV_SOL 005. It indicates the operational + state of the resource. + ENABLED = The operational state of the resource is enabled. + DISABLED = The operational state of the resource is disabled." + enum: + - "ENABLED" + - "DISABLED" + NsdOnboardingStateType: + type: "string" + description: > + "The enumeration NsdOnboardingStateType shall comply with the provisions + defined in Table 5.5.4.5-1 of GS NFV-SOL 005. It indicates the on-boarding + state of the NSD. + CREATED = The NSD information object is created. + UPLOADING = The associated NSD content is being uploaded. + PROCESSING = The associated NSD content is being processed, e.g. validation. + ONBOARDED = The associated NSD content is on-boarded." + enum: + - "CREATED" + - "UPLOADING" + - "PROCESSING" + - "ONBOARDED" + NsdUsageStateType: + type: "string" + description: > + "The enumeration NsdUsageStateType shall comply with the provisions + defined in Table 5.5.4.4-1 of GS NFV-SOL 005. It indicates the usage state + of the resource.IN_USE = The resource is in use.NOT_IN_USE = The resource + is not-in-use." + enum: + - "IN_USE" + - "NOT_IN_USE" + CreateNsdInfoRequest: + type: "object" + properties: + userDefinedData: + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + description: > + "This type creates a completely new NS descriptor resource." + PnfdInfoModifications: + type: "object" + required: + - "userDefinedData" + properties: + userDefinedData: + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + description: > + "This type represents attribute modifications for an individual PNF + descriptor resource based on the "PnfdInfo" data type. The attributes of + "PnfdInfo" that can be modified are included in the "PnfdInfoModifications" + data type." + PnfdInfo: + type: "object" + required: + - "id" + - "pnfdOnboardingState" + - "pnfdUsageState" + - "_links" + properties: + id: + description: > + Identifier of the on-boarded individual PNF + descriptor resource. This identifier is allocated by + the NFVO. + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdId: + description: > + This identifier, which is managed by the PNFD + designer, identifies the PNFD in a globally unique way. + It is copied from the PNFD content and shall + be present after the PNFD content is on-boarded. + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdName: + description: > + Name of the on-boarded PNFD. This information + is copied from the PNFD content and shall be + present after the PNFD content is on-boarded. + type: "string" + pnfdersion: + $ref: "SOL005_def.yaml#/definitions/Version" + pnfdProvider: + description: > + "Provider of the on-boarded PNFD. This information is copied from + the PNFD content and shall be present after the PNFD content is on-boarded." + type: "string" + pnfdInvariantId: + description: > + Identifies a PNFD in a version independent + manner. This attribute is invariant across versions + of PNFD. + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdOnboardingState: + description: > + On-boarding state of the individual PNF descriptor resource. + $ref: "#/definitions/PnfdOnboardingStateType" + onboardingFailureDetails: + description: > + Failure details of current on-boarding procedure. + It shall be present when the + pnfdOnboardingState attribute is CREATED + and the uploading or processing fails in the NFVO. + $ref: "SOL005_def.yaml#/definitions/ProblemDetails" + pnfdUsageState: + description: > + Usage state of the individual PNF descriptor resource. + $ref: "#/definitions/PnfdUsageStateType" + userDefinedData: + type: "array" + description: > + User defined data for the individual PNF descriptor resource. + This attribute can be modified with the PATCH method. + items: + type: "object" + _links: + required: + - "pnfd_content" + - "self" + type: "object" + description: > + "Links to resources related to this resource." + properties: + self: + $ref: "SOL005_def.yaml#/definitions/Link" + pnfd_content: + $ref: "SOL005_def.yaml#/definitions/Link" + description: > + "This type represents a response for the query PNFD operation." - type: string - enum: - - BASIC - - OAUTH2_CLIENT_CREDENTIALS - - TLS_CERT - paramsBasic: - type: "object" - description: > - Parameters for authentication/authorization using BASIC. - Shall be present if authType is "BASIC" and - the contained information has not been - provisioned out of band. Shall be absent otherwise. - properties: - userName: - description: > - Username to be used in HTTP Basic authentication. - Shall be present if it has not been provisioned out of band. - type: string - password: - description: > - Password to be used in HTTP Basic authentication. - Shall be present if it has not been provisioned out of band. - type: string - paramsOauth2ClientCredentials: - type: "object" - description: > - Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS. - Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the - contained information has not been provisioned out of band. - Shall be absent otherwise - properties: - clientId: - description: > - Client identifier to be used in the access token - request of the OAuth 2.0 client credentials - grant type. Shall be present if it has not been - provisioned out of band. - type: string - clientPassword: - description: > - Client password to be used in the access - token request of the OAuth 2.0 client - credentials grant type. Shall be present if it - has not been provisioned out of band. - type: string - tokenEndpoint: - description: > - The token endpoint from which the access - token can be obtained. Shall be present if it - has not been provisioned out of band. - $ref: "SOL005_def.yaml#/definitions/Uri" - - NsdOperationalStateType: - type: "string" - description: > - "The enumeration NsdOperationalStateType shall comply with the provisions - defined in Table 5.5.4.3-1 of GS NFV_SOL 005. It indicates the operational - state of the resource. - ENABLED = The operational state of the resource is enabled. - DISABLED = The operational state of the resource is disabled." - enum: - - "ENABLED" - - "DISABLED" - NsdOnboardingStateType: - type: "string" - description: > - "The enumeration NsdOnboardingStateType shall comply with the provisions - defined in Table 5.5.4.5-1 of GS NFV-SOL 005. It indicates the on-boarding - state of the NSD. - CREATED = The NSD information object is created. - UPLOADING = The associated NSD content is being uploaded. - PROCESSING = The associated NSD content is being processed, e.g. validation. - ONBOARDED = The associated NSD content is on-boarded." - enum: - - "CREATED" - - "UPLOADING" - - "PROCESSING" - - "ONBOARDED" - NsdUsageStateType: - type: "string" - description: > - "The enumeration NsdUsageStateType shall comply with the provisions - defined in Table 5.5.4.4-1 of GS NFV-SOL 005. It indicates the usage state - of the resource.IN_USE = The resource is in use.NOT_IN_USE = The resource - is not-in-use." - enum: - - "IN_USE" - - "NOT_IN_USE" - CreateNsdInfoRequest: - type: "object" - properties: - userDefinedData: - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - description: > - "This type creates a completely new NS descriptor resource." - PnfdInfoModifications: - type: "object" - required: - - "userDefinedData" - properties: - userDefinedData: - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - description: > - "This type represents attribute modifications for an individual PNF - descriptor resource based on the "PnfdInfo" data type. The attributes of - "PnfdInfo" that can be modified are included in the "PnfdInfoModifications" - data type." - PnfdInfo: - type: "object" - required: - - "id" - - "pnfdOnboardingState" - - "pnfdUsageState" - - "_links" - properties: - id: - description: > - Identifier of the on-boarded individual PNF - descriptor resource. This identifier is allocated by - the NFVO. - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdId: - description: > - This identifier, which is managed by the PNFD - designer, identifies the PNFD in a globally unique way. - It is copied from the PNFD content and shall - be present after the PNFD content is on-boarded. - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdName: - description: > - Name of the on-boarded PNFD. This information - is copied from the PNFD content and shall be - present after the PNFD content is on-boarded. - type: "string" - pnfdersion: - $ref: "SOL005_def.yaml#/definitions/Version" - pnfdProvider: - description: > - "Provider of the on-boarded PNFD. This information is copied from - the PNFD content and shall be present after the PNFD content is on-boarded." - type: "string" - pnfdInvariantId: - description: > - Identifies a PNFD in a version independent - manner. This attribute is invariant across versions - of PNFD. - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdOnboardingState: - description: > - On-boarding state of the individual PNF descriptor resource. - $ref: "#/definitions/PnfdOnboardingStateType" - onboardingFailureDetails: - description: > - Failure details of current on-boarding procedure. - It shall be present when the - pnfdOnboardingState attribute is CREATED - and the uploading or processing fails in the NFVO. - $ref: "SOL005_def.yaml#/definitions/ProblemDetails" - pnfdUsageState: - description: > - Usage state of the individual PNF descriptor resource. - $ref: "#/definitions/PnfdUsageStateType" - userDefinedData: - type: "array" - description: > - User defined data for the individual PNF descriptor resource. - This attribute can be modified with the PATCH method. - items: - type: "object" - _links: - required: - - "pnfd_content" - - "self" - type: "object" - description: > - "Links to resources related to this resource." - properties: - self: - $ref: "SOL005_def.yaml#/definitions/Link" - pnfd_content: - $ref: "SOL005_def.yaml#/definitions/Link" - description: > - "This type represents a response for the query PNFD operation." - - PnfdOnboardingStateType: - type: "string" - description: > - The enumeration PnfdOnboardingStateType shall comply with the provisions - defined in Table 5.5.4.6-1 of GS-NFV SOL005. It indicates the on-boarding state - of the individual PNF descriptor resource. - CREATED = The PNF descriptor resource is created. - UPLOADING = The associated PNFD content is being uploaded. - PROCESSING = The associated PNFD content is being processed, e.g. validation. - ONBOARDED = The associated PNFD content is on-boarded. - enum: - - "CREATED" - - "UPLOADING" - - "PROCESSING" - - "ONBOARDING" - PnfdUsageStateType: - type: "string" - description: > - "The enumeration PnfdUsageStateType shall comply with the provisions - defined in Table 5.5.4.7-1 of GS NFV-SOL005. It indicates the usage state - of the resource.IN-USE = The resource is in use.NOT_IN_USE = The resource - is not-in-use." - enum: - - "IN_USE" - - "NOT_IN_USE" - CreatePnfdInfoRequest: - type: "object" - properties: - userDefinedData: - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - description: > - User-defined data for the PNF descriptor resource to be created. - It shall be present when the user defined data is set for - the individual PNF descriptor resource to be created. - NsdmLinks: - type: "object" - required: - - "nsdInfo" - - "subscription" - properties: - nsdInfo: - $ref: "SOL005_def.yaml#/definitions/Link" - subscription: - $ref: "SOL005_def.yaml#/definitions/Link" - description: > - "This type represents the links to resources that an NSD management - notification can contain." - PnfdmLinks: - type: "object" - required: - - "pnfdInfo" - - "subscription" - properties: - pnfdInfo: - $ref: "SOL005_def.yaml#/definitions/Link" - subscription: - $ref: "SOL005_def.yaml#/definitions/Link" - description: > - "This type represents the links to resources that a PNFD management - notification can contain." - NsdOnBoardingNotification: - type: "object" - required: - - "_links" - - "id" - - "notificationType" - - "nsdId" - - "nsdInfoId" - - "timeStamp" - properties: - id: - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - type: "string" - description: > - "Discriminator for the different notification types. Shall be - set to "NsdOnboardingNotification" for this notification type." - subscriptionId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - nsdInfoId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - _links: - $ref: "#/definitions/NsdmLinks" - description: > - "This type represents an NSD management notification, which informs - the receiver of the successful on-boarding of an NSD. It shall comply with - the provisions defined in Table 5.5.2.9-1. The support of this notification - is mandatory. The notification shall be triggered by the NFVO when the " - nsdOnboardingState" attribute of a new NSD has changed to "ONBOARDED"." - NsdOnBoardingFailureNotification: - type: "object" - required: - - "_links" - - "id" - - "notificationType" - - "nsdInfoId" - - "onboardingFailureDetails" - - "timeStamp" - properties: - id: - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - type: "string" - description: > - "Discriminator for the different notification types. Shall be - set to "NsdOnboardingFailureNotification" for this notification type." - subscriptionId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - nsdInfoId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - onboardingFailureDetails: - $ref: "SOL005_def.yaml#/definitions/ProblemDetails" - _links: - $ref: "#/definitions/NsdmLinks" - description: > - "This type represents an NSD management notification, which informs - the receiver of the failure of on-boarding an NSD. It shall comply with the - provisions defined in Table 5.5.2.10-1. The support of this notification is - mandatory. The notification shall be triggered by the NFVO when the on-boarding - of an NSD has failed." - NsdChangeNotification: - type: "object" - required: - - "_links" - - "id" - - "notificationType" - - "nsdId" - - "nsdInfoId" - - "nsdOperationalState" - - "timeStamp" - properties: - id: - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - type: "string" - description: > - "Discriminator for the different notification types. Shall be - set to "NsdChangeNotification" for this notification type." - subscriptionId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - nsdInfoId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdOperationalState: - $ref: "#/definitions/NsdOperationalStateType" - _links: - $ref: "#/definitions/NsdmLinks" - description: > - "This type represents an NSD management notification, which informs - the receiver of a change of the "nsdOperationalState" attribute of an on-boarded - NSD. Changes in the value of the "nsdUsageState" and "nsdOnboardingState" - attributes are not reported. The notification shall comply with the provisions - defined in Table 5.5.2.11-1. The support of this notification is mandatory. - The notification shall be triggered by the NFVO when the value of the "nsdOperationalState" - attribute has changed, and the "nsdOperationalState" attribute has the value - "ONBOARDED"." - NsdDeletionNotification: - type: "object" - required: - - "_links" - - "id" - - "notificationType" - - "nsdId" - - "nsdInfoId" - - "timeStamp" - properties: - id: - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - type: "string" - description: > - "Discriminator for the different notification types. Shall be - set to "NsdDeletionNotification " for this notification type." - subscriptionId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - nsdInfoId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - _links: - $ref: "#/definitions/NsdmLinks" - description: > - "This type represents an NSD management notification, which informs - the receiver of the deletion of an on-boarded NSD. The notification shall - comply with the provisions defined in Table 5.5.2.12-1. The support of this - notification is mandatory. The notification shall be triggered by the NFVO - when it has deleted an on-boarded NSD." - PnfdOnBoardingNotification: - type: "object" - required: - - "_links" - - "id" - - "notificationType" - - "pnfdId" - - "pnfdInfoId" - - "timeStamp" - properties: - id: - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - type: "string" - description: > - "Discriminator for the different notification types. Shall be - set to "PnfdOnboardingNotification" for this notification type." - subscriptionId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - pnfdInfoId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - _links: - $ref: "#/definitions/PnfdmLinks" - description: > - "This type represents a PNFD management notification, which informs - the receiver of the successful on-boarding of aPNFD. It shall comply with - the provisions defined in Table 5.5.2.13-1. The support of this notification - is mandatory. The notification is triggered when a new PNFD is on-boarded." - PnfdOnBoardingFailureNotification: - type: "object" - required: - - "_links" - - "id" - - "notificationType" - - "onboardingFailureDetails" - - "pnfdInfoId" - - "timeStamp" - properties: - id: - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - type: "string" - description: > - "Discriminator for the different notification types. Shall be - set to "PnfdOnboardingFailureNotification" for this notification type." - subscriptionId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - pnfdInfoId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - onboardingFailureDetails: - $ref: "SOL005_def.yaml#/definitions/ProblemDetails" - _links: - $ref: "#/definitions/PnfdmLinks" - description: > - "This type represents a PNFD management notification, which informs - the receiver of the failure of on-boarding a PNFD. It shall comply with - the provisions defined in Table 5.5.2.14-1. The support of this notification - is mandatory. The notification is triggered when the on-boarding of a PNFD - fails." - PnfdDeletionNotification: - type: "object" - required: - - "_links" - - "id" - - "notificationType" - - "pnfdId" - - "pnfdInfoId" - - "timeStamp" - properties: - id: - type: "string" - description: > - "Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value." - notificationType: - type: "string" - description: > - "Discriminator for the different notification types. Shall be - set to "PnfdDeletionNotification " for this notification type." - subscriptionId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - pnfdInfoId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfdId: - $ref: "SOL005_def.yaml#/definitions/Identifier" - _links: - $ref: "#/definitions/PnfdmLinks" - description: > - "This type represents a PNFD management notification, which informs - the receiver of the deletion of an on-boarded PNFD. The notification shall - comply with the provisions defined in Table 5.5.2.15-1. The support of this - notification is mandatory. The notification is triggered when an on-boarded - PNFD is deleted." \ No newline at end of file + PnfdOnboardingStateType: + type: "string" + description: > + The enumeration PnfdOnboardingStateType shall comply with the provisions + defined in Table 5.5.4.6-1 of GS-NFV SOL005. It indicates the on-boarding state + of the individual PNF descriptor resource. + CREATED = The PNF descriptor resource is created. + UPLOADING = The associated PNFD content is being uploaded. + PROCESSING = The associated PNFD content is being processed, e.g. validation. + ONBOARDED = The associated PNFD content is on-boarded. + enum: + - "CREATED" + - "UPLOADING" + - "PROCESSING" + - "ONBOARDING" + PnfdUsageStateType: + type: "string" + description: > + "The enumeration PnfdUsageStateType shall comply with the provisions + defined in Table 5.5.4.7-1 of GS NFV-SOL005. It indicates the usage state + of the resource.IN-USE = The resource is in use.NOT_IN_USE = The resource + is not-in-use." + enum: + - "IN_USE" + - "NOT_IN_USE" + CreatePnfdInfoRequest: + type: "object" + properties: + userDefinedData: + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + description: > + User-defined data for the PNF descriptor resource to be created. + It shall be present when the user defined data is set for + the individual PNF descriptor resource to be created. + NsdmLinks: + type: "object" + required: + - "nsdInfo" + - "subscription" + properties: + nsdInfo: + $ref: "SOL005_def.yaml#/definitions/Link" + subscription: + $ref: "SOL005_def.yaml#/definitions/Link" + description: > + "This type represents the links to resources that an NSD management + notification can contain." + PnfdmLinks: + type: "object" + required: + - "pnfdInfo" + - "subscription" + properties: + pnfdInfo: + $ref: "SOL005_def.yaml#/definitions/Link" + subscription: + $ref: "SOL005_def.yaml#/definitions/Link" + description: > + "This type represents the links to resources that a PNFD management + notification can contain." + NsdOnBoardingNotification: + type: "object" + required: + - "_links" + - "id" + - "notificationType" + - "nsdId" + - "nsdInfoId" + - "timeStamp" + properties: + id: + $ref: "SOL005_def.yaml#/definitions/Identifier" + notificationType: + type: "string" + description: > + "Discriminator for the different notification types. Shall be + set to "NsdOnboardingNotification" for this notification type." + subscriptionId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "SOL005_def.yaml#/definitions/DateTime" + nsdInfoId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + _links: + $ref: "#/definitions/NsdmLinks" + description: > + "This type represents an NSD management notification, which informs + the receiver of the successful on-boarding of an NSD. It shall comply with + the provisions defined in Table 5.5.2.9-1. The support of this notification + is mandatory. The notification shall be triggered by the NFVO when the " + nsdOnboardingState" attribute of a new NSD has changed to "ONBOARDED"." + NsdOnBoardingFailureNotification: + type: "object" + required: + - "_links" + - "id" + - "notificationType" + - "nsdInfoId" + - "onboardingFailureDetails" + - "timeStamp" + properties: + id: + $ref: "SOL005_def.yaml#/definitions/Identifier" + notificationType: + type: "string" + description: > + "Discriminator for the different notification types. Shall be + set to "NsdOnboardingFailureNotification" for this notification type." + subscriptionId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "SOL005_def.yaml#/definitions/DateTime" + nsdInfoId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + onboardingFailureDetails: + $ref: "SOL005_def.yaml#/definitions/ProblemDetails" + _links: + $ref: "#/definitions/NsdmLinks" + description: > + "This type represents an NSD management notification, which informs + the receiver of the failure of on-boarding an NSD. It shall comply with the + provisions defined in Table 5.5.2.10-1. The support of this notification is + mandatory. The notification shall be triggered by the NFVO when the on-boarding + of an NSD has failed." + NsdChangeNotification: + type: "object" + required: + - "_links" + - "id" + - "notificationType" + - "nsdId" + - "nsdInfoId" + - "nsdOperationalState" + - "timeStamp" + properties: + id: + $ref: "SOL005_def.yaml#/definitions/Identifier" + notificationType: + type: "string" + description: > + "Discriminator for the different notification types. Shall be + set to "NsdChangeNotification" for this notification type." + subscriptionId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "SOL005_def.yaml#/definitions/DateTime" + nsdInfoId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdOperationalState: + $ref: "#/definitions/NsdOperationalStateType" + _links: + $ref: "#/definitions/NsdmLinks" + description: > + "This type represents an NSD management notification, which informs + the receiver of a change of the "nsdOperationalState" attribute of an on-boarded + NSD. Changes in the value of the "nsdUsageState" and "nsdOnboardingState" + attributes are not reported. The notification shall comply with the provisions + defined in Table 5.5.2.11-1. The support of this notification is mandatory. + The notification shall be triggered by the NFVO when the value of the "nsdOperationalState" + attribute has changed, and the "nsdOperationalState" attribute has the value + "ONBOARDED"." + NsdDeletionNotification: + type: "object" + required: + - "_links" + - "id" + - "notificationType" + - "nsdId" + - "nsdInfoId" + - "timeStamp" + properties: + id: + $ref: "SOL005_def.yaml#/definitions/Identifier" + notificationType: + type: "string" + description: > + "Discriminator for the different notification types. Shall be + set to "NsdDeletionNotification " for this notification type." + subscriptionId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "SOL005_def.yaml#/definitions/DateTime" + nsdInfoId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + _links: + $ref: "#/definitions/NsdmLinks" + description: > + "This type represents an NSD management notification, which informs + the receiver of the deletion of an on-boarded NSD. The notification shall + comply with the provisions defined in Table 5.5.2.12-1. The support of this + notification is mandatory. The notification shall be triggered by the NFVO + when it has deleted an on-boarded NSD." + PnfdOnBoardingNotification: + type: "object" + required: + - "_links" + - "id" + - "notificationType" + - "pnfdId" + - "pnfdInfoId" + - "timeStamp" + properties: + id: + $ref: "SOL005_def.yaml#/definitions/Identifier" + notificationType: + type: "string" + description: > + "Discriminator for the different notification types. Shall be + set to "PnfdOnboardingNotification" for this notification type." + subscriptionId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "SOL005_def.yaml#/definitions/DateTime" + pnfdInfoId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + _links: + $ref: "#/definitions/PnfdmLinks" + description: > + "This type represents a PNFD management notification, which informs + the receiver of the successful on-boarding of aPNFD. It shall comply with + the provisions defined in Table 5.5.2.13-1. The support of this notification + is mandatory. The notification is triggered when a new PNFD is on-boarded." + PnfdOnBoardingFailureNotification: + type: "object" + required: + - "_links" + - "id" + - "notificationType" + - "onboardingFailureDetails" + - "pnfdInfoId" + - "timeStamp" + properties: + id: + $ref: "SOL005_def.yaml#/definitions/Identifier" + notificationType: + type: "string" + description: > + "Discriminator for the different notification types. Shall be + set to "PnfdOnboardingFailureNotification" for this notification type." + subscriptionId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "SOL005_def.yaml#/definitions/DateTime" + pnfdInfoId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + onboardingFailureDetails: + $ref: "SOL005_def.yaml#/definitions/ProblemDetails" + _links: + $ref: "#/definitions/PnfdmLinks" + description: > + "This type represents a PNFD management notification, which informs + the receiver of the failure of on-boarding a PNFD. It shall comply with + the provisions defined in Table 5.5.2.14-1. The support of this notification + is mandatory. The notification is triggered when the on-boarding of a PNFD + fails." + PnfdDeletionNotification: + type: "object" + required: + - "_links" + - "id" + - "notificationType" + - "pnfdId" + - "pnfdInfoId" + - "timeStamp" + properties: + id: + type: "string" + description: > + "Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value." + notificationType: + type: "string" + description: > + "Discriminator for the different notification types. Shall be + set to "PnfdDeletionNotification " for this notification type." + subscriptionId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "SOL005_def.yaml#/definitions/DateTime" + pnfdInfoId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfdId: + $ref: "SOL005_def.yaml#/definitions/Identifier" + _links: + $ref: "#/definitions/PnfdmLinks" + description: > + "This type represents a PNFD management notification, which informs + the receiver of the deletion of an on-boarded PNFD. The notification shall + comply with the provisions defined in Table 5.5.2.15-1. The support of this + notification is mandatory. The notification is triggered when an on-boarded + PNFD is deleted." \ No newline at end of file diff --git a/src/SOL005/NSDManagement/definitions/SOL005_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005_def.yaml index efc9b17..babd0fd 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005_def.yaml @@ -1,102 +1,102 @@ # Copyright (c) ETSI 2017. # https://forge.etsi.org/etsi-forge-copyright-notice.txt - definitions: - Identifier: - description: > - An identifier with the intention of being globally unique. - type: string - KeyValuePairs: - description: > - This type represents a list of key-value pairs. The order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - String: - description: > - This type represents stack of string values - type: string - - Version: - description: > - A Version. - type: string - - Uri: - description: > - String formatted according to IETF RFC 3986. - type: string - Link: - description: > - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: > - URI of the referenced resource. - type: string - format: url - DateTime: - description: > - Date-time stamp. - Representation: String formatted according to IETF RFC 3339. - type: string - format: "date-time" - ProblemDetails: - #SOL005 location: 4.3.5.3-1 - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced in this structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present document, - to ensure that the response contains additional textual information about - an error. IETF RFC 7807 [19] foresees extensibility of the - "ProblemDetails" type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to define - additional attributes that provide more information about the error. - The description column only provides some explanation of the meaning to - Facilitate understanding of the design. For a full description, see - IETF RFC 7807 [19]. - type: object - required: - - statussss - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies the - problem type. It is encouraged that the URI provides human-readable - documentation for the problem (e.g. using HTML) when dereferenced. - When this member is not present, its value is assumed to be - "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should not - change from occurrence to occurrence of the problem, except for - purposes of localization. If type is given and other than - "about:blank", this attribute shall also be provided. - A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of the - problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by the origin - server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of the - problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI \ No newline at end of file +definitions: + Identifier: + description: > + An identifier with the intention of being globally unique. + type: string + KeyValuePairs: + description: > + This type represents a list of key-value pairs. The order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + String: + description: > + This type represents stack of string values + type: string + + Version: + description: > + A Version. + type: string + + Uri: + description: > + String formatted according to IETF RFC 3986. + type: string + Link: + description: > + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: > + URI of the referenced resource. + type: string + format: url + DateTime: + description: > + Date-time stamp. + Representation: String formatted according to IETF RFC 3339. + type: string + format: "date-time" + ProblemDetails: + #SOL005 location: 4.3.5.3-1 + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced in this structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present document, + to ensure that the response contains additional textual information about + an error. IETF RFC 7807 [19] foresees extensibility of the + "ProblemDetails" type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to define + additional attributes that provide more information about the error. + The description column only provides some explanation of the meaning to + Facilitate understanding of the design. For a full description, see + IETF RFC 7807 [19]. + type: object + required: + - statussss + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies the + problem type. It is encouraged that the URI provides human-readable + documentation for the problem (e.g. using HTML) when dereferenced. + When this member is not present, its value is assumed to be + "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should not + change from occurrence to occurrence of the problem, except for + purposes of localization. If type is given and other than + "about:blank", this attribute shall also be provided. + A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of the + problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by the origin + server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of the + problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI \ No newline at end of file diff --git a/src/SOL005/NSDManagement/responses/NSDescriptorManagement_resp.yaml b/src/SOL005/NSDManagement/responses/NSDescriptorManagement_resp.yaml index 97eaac7..a7c7ea8 100644 --- a/src/SOL005/NSDManagement/responses/NSDescriptorManagement_resp.yaml +++ b/src/SOL005/NSDManagement/responses/NSDescriptorManagement_resp.yaml @@ -1,292 +1,292 @@ - responses: - 202-with-Location: - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. The response body shall be empty. - The HTTP response shall include a "Location" HTTP - header that contains the URI of the newly-created - "NS lifecycle operation occurrence" resource - corresponding to the operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" - 202-with-Location-empty: - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "NS Descriptor operation occurrence" resource corresponding to the - operation. - The response body shall be empty. - headers: - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - 409: - description: > - Conflict - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact the NS descriptor - resource is in the enabled operational state (i.e. - operationalState = ENABLED) or there are running - NS instances using the concerned individual NS - descriptor resource (i.e. usageState = IN_USE). - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-another-nsd-operation-ongoing: - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that another Descriptor operation is - ongoing. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-inconsistent-state: - description: > - Conflict - - Another request is in progress that prohibits the fulfillment of - the current request, or the current resource state is inconsistent - with the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-INSTANTIATED: - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is in - INSTANTIATED state. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-not-FAILED_TEMP: - description: > - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is - not in FAILED_TEMP state, or another error handling action is starting, - such as rollback or fail. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-NOT-INSTANTIATED: - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is in - NOT-INSTANTIATED state, or that another lifecycle management operation - is ongoing. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-nsd-onboarding-state-NOT-ONBOARDED: - description: > - Conflict - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact "nsdOnboardingState" - has a value different from ONBOARDED. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-pnfd-onboarding-state-NOT-ONBOARDED: - description: > - Conflict - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact pnfdOnboardingState - has a value different from ONBOARDED. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-pnfd-onboarding-state-NOT-CREATED: - description: > - Conflict. - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact that the - PnfdOnboardingState has a value other than CREATED. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file +responses: + 202-with-Location: + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. The response body shall be empty. + The HTTP response shall include a "Location" HTTP + header that contains the URI of the newly-created + "NS lifecycle operation occurrence" resource + corresponding to the operation. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" + 202-with-Location-empty: + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "NS Descriptor operation occurrence" resource corresponding to the + operation. + The response body shall be empty. + headers: + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + 409: + description: > + Conflict + + Error: The operation cannot be executed currently, + due to a conflict with the state of the resource. + Typically, this is due to the fact the NS descriptor + resource is in the enabled operational state (i.e. + operationalState = ENABLED) or there are running + NS instances using the concerned individual NS + descriptor resource (i.e. usageState = IN_USE). + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-another-nsd-operation-ongoing: + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that another Descriptor operation is + ongoing. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-inconsistent-state: + description: > + Conflict + + Another request is in progress that prohibits the fulfillment of + the current request, or the current resource state is inconsistent + with the request. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-INSTANTIATED: + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that the NS instance resource is in + INSTANTIATED state. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-not-FAILED_TEMP: + description: > + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that the NS instance resource is + not in FAILED_TEMP state, or another error handling action is starting, + such as rollback or fail. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-NOT-INSTANTIATED: + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that the NS instance resource is in + NOT-INSTANTIATED state, or that another lifecycle management operation + is ongoing. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-nsd-onboarding-state-NOT-ONBOARDED: + description: > + Conflict + + Error: The operation cannot be executed currently, + due to a conflict with the state of the resource. + Typically, this is due to the fact "nsdOnboardingState" + has a value different from ONBOARDED. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-pnfd-onboarding-state-NOT-ONBOARDED: + description: > + Conflict + + Error: The operation cannot be executed currently, + due to a conflict with the state of the resource. + Typically, this is due to the fact pnfdOnboardingState + has a value different from ONBOARDED. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-pnfd-onboarding-state-NOT-CREATED: + description: > + Conflict. + + Error: The operation cannot be executed currently, + due to a conflict with the state of the resource. + Typically, this is due to the fact that the + PnfdOnboardingState has a value other than CREATED. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL005/NSDManagement/responses/SOL005_resp.yaml b/src/SOL005/NSDManagement/responses/SOL005_resp.yaml index 63de4a6..2169308 100644 --- a/src/SOL005/NSDManagement/responses/SOL005_resp.yaml +++ b/src/SOL005/NSDManagement/responses/SOL005_resp.yaml @@ -1,13 +1,13 @@ - # Copyright (c) ETSI 2017. - # https://forge.etsi.org/etsi-forge-copyright-notice.txt - responses: - 202: - description: > - Accepted +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +responses: + 202: + description: > + Accepted - The request was accepted for processing, but processing has not - been completed. The response shall have an empty payload body. - headers: + The request was accepted for processing, but processing has not + been completed. The response shall have an empty payload body. + headers: Location: description: The resource URI of the created NS instance type: string @@ -20,398 +20,398 @@ type: string maximum: 1 minimum: 0 - 202-with-Location: - description: > - Accepted + 202-with-Location: + description: > + Accepted - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "NS LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - 206: - description: > - Partial Content. - - On success, if the NFVO supports range requests, a - single consecutive byte range from the content of the - NSD file is returned. - The response body shall contain the requested part of - the NSD file. - The "Content-Range" HTTP header shall be provided - according to IETF RFC 7233 [23]. - The "Content-Type" HTTP header shall be set as - defined above for the "200 OK" response. - headers: - Content-Range: - type: "string" - Content-Type: - type: "string" - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 303: - description: > - See Other - A subscription with the same callbackURI and the same filter already - exists and the policy of the VNFM is to not create redundant - subscriptions. - The HTTP response shall include a "Location" HTTP header that contains - the resource URI of the existing subscription resource. - The response body shall be empty. - 400: - description: > - Bad Request + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "NS LCM operation occurrence" resource corresponding to the + operation. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + 206: + description: > + Partial Content. + + On success, if the NFVO supports range requests, a + single consecutive byte range from the content of the + NSD file is returned. + The response body shall contain the requested part of + the NSD file. + The "Content-Range" HTTP header shall be provided + according to IETF RFC 7233 [23]. + The "Content-Type" HTTP header shall be set as + defined above for the "200 OK" response. + headers: + Content-Range: + type: "string" + Content-Type: + type: "string" + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 303: + description: > + See Other + A subscription with the same callbackURI and the same filter already + exists and the policy of the VNFM is to not create redundant + subscriptions. + The HTTP response shall include a "Location" HTTP header that contains + the resource URI of the existing subscription resource. + The response body shall be empty. + 400: + description: > + Bad Request - Error: Invalid attribute-based filtering parameters. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute should convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 400-attr-based-filtering-error: - description: > - Bad Request - Invalid attribute-based filtering parameters or Invalid attribute - selector. - It the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided, - and should include in the "detail" attribute more information about - the source of the problem. - If the request contains a malformed access token, the API producer - should respond with this response. The details of the error shall - be returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be - provided. - If there is an application error related to the client's input that - cannot be easily mapped to any other HTTP response code ("catch all - error"), the API producer shall respond with this response code.The - "ProblemDetails" structure shall be provided, and shall include in - the "detail" attribute more information about the source of the - problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 400-attr-selector: - description: > - Error: Invalid attribute selector. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute should convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 401: - description: > - Unauthorized - If the request contains no access token even though one is - required, or if the request contains an authorization token that - is invalid (e.g. expired or revoked), the API producer should - respond with this response. The details of the error shall be - returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails - structure may be provided. - headers: - Content-Type: - type: string - description: The MIME type of the body of the response. - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 403: - description: > - Forbidden - If the API consumer is not allowed to perform a particular request - to a particular resource, the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided. - It should include in the "detail" attribute information about the - source of the problem, and may indicate how to solve it. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - The "ProblemDetails" structure may be provided, - including in the "detail" attribute information about the source - of the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-resource-not-exists: - description: > - Not Found - Error: The API producer did not find a current representation for the - target resource or is not willing to disclose that one exists. - Specifically in case of this task resource, the response code 404 shall - also returned if the task is not supported for the NS instance - represented by the parent resource, which means that the task resource - consequently does not exist. - In this case, the response body shall be present, and shall contain a - ProblemDetails structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-resource-not-exists-NSD: - description: > - Not Found - Error: The API producer did not find a current representation for the - target resource or is not willing to disclose that one exists. - Specifically in case of this task resource, the response code 404 shall - also be returned if the task is not supported for the NS LCM operation - occurrence represented by the parent resource, which means that the task - resource consequently does not exist. - In this case, the response body shall be present, and shall contain a - ProblemDetails structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-not-suported: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - Specifically in case of this task resource, the reason can also be that - the task is not supported for the NS instance represented by the parent - resource, and that the task resource consequently does not exist. - The "ProblemDetails" structure may be provided, including in the - "detail" attribute information about the sourceof the problem, e.g. a - wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-not-suported-NSD: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - Specifically in case of this task resource, the reason can also be that - the task is not supported for the NS LCM operation occurrence - represented by the parent resource, and that the task resource - consequently does not exist. - The "ProblemDetails" structure may be provided, including in the - "detail" attribute information about the source of the problem, e.g. a - wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 405: - description: > - Method Not Allowed - If a particular HTTP method is not supported for a particular - resource, the API producer shall respond with this response code. - The "ProblemDetails" structure may be omitted in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 406: - description: > - 406 Not Acceptable - - If the "Accept" header does not contain at least one - name of a content type for which the NFVO can - provide a representation of the NSD, the NFVO shall - respond with this response code. - The "ProblemDetails" structure may be included with - the "detail" attribute providing more information about - the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 412: - description: > - Precondition Failed. - A precondition given in an HTTP request header is not fulfilled. - - Typically, this is due to an ETag mismatch, indicating that the - resource was modified by another entity. - - The response body should - contain a ProblemDetails structure, in which the "detail" attribute - should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 416: - description: > - The byte range passed in the "Range" header did not - match any available byte range in the NSD file (e.g. access after end of file). - The response body may contain a ProblemDetails structure. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 422: - description: > - Unprocessable Entity - If the payload body of a request contains syntactically correct - data (e.g. well-formed JSON) but the data cannot be processed - (e.g. because it fails validation against a schema), the API - producer shall respond with this response code. The - "ProblemDetails" structure shall be provided, and should include - in the "detail" attribute more information about the source of the - problem. - NOTE 2: This error response code is only applicable for methods - that have a request body. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 500: - description: > - Internal Server Error - If there is an application error not related to the client's input - that cannot be easily mapped to any other HTTP response code - ("catch all error"), the API producer shall respond with this - response code. The ProblemDetails structure shall be provided, - and shall include in the "detail" attribute more information about - the source of the problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 503: - description: > - Service Unavailable - If the API producer encounters an internal overload situation of - itself or of a system it relies on, it should respond with this - response code, following the provisions in IETF RFC 7231 [13] for - the use of the Retry-After HTTP header and for the alternative - to refuse the connection. The "ProblemDetails" structure may be omitted. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file + Error: Invalid attribute-based filtering parameters. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute should convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 400-attr-based-filtering-error: + description: > + Bad Request + Invalid attribute-based filtering parameters or Invalid attribute + selector. + It the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, + and should include in the "detail" attribute more information about + the source of the problem. + If the request contains a malformed access token, the API producer + should respond with this response. The details of the error shall + be returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be + provided. + If there is an application error related to the client's input that + cannot be easily mapped to any other HTTP response code ("catch all + error"), the API producer shall respond with this response code.The + "ProblemDetails" structure shall be provided, and shall include in + the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 400-attr-selector: + description: > + Error: Invalid attribute selector. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute should convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 401: + description: > + Unauthorized + If the request contains no access token even though one is + required, or if the request contains an authorization token that + is invalid (e.g. expired or revoked), the API producer should + respond with this response. The details of the error shall be + returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails + structure may be provided. + headers: + Content-Type: + type: string + description: The MIME type of the body of the response. + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 403: + description: > + Forbidden + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. + It should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source + of the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-resource-not-exists: + description: > + Not Found + Error: The API producer did not find a current representation for the + target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 shall + also returned if the task is not supported for the NS instance + represented by the parent resource, which means that the task resource + consequently does not exist. + In this case, the response body shall be present, and shall contain a + ProblemDetails structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-resource-not-exists-NSD: + description: > + Not Found + Error: The API producer did not find a current representation for the + target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 shall + also be returned if the task is not supported for the NS LCM operation + occurrence represented by the parent resource, which means that the task + resource consequently does not exist. + In this case, the response body shall be present, and shall contain a + ProblemDetails structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-not-suported: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + Specifically in case of this task resource, the reason can also be that + the task is not supported for the NS instance represented by the parent + resource, and that the task resource consequently does not exist. + The "ProblemDetails" structure may be provided, including in the + "detail" attribute information about the sourceof the problem, e.g. a + wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-not-suported-NSD: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + Specifically in case of this task resource, the reason can also be that + the task is not supported for the NS LCM operation occurrence + represented by the parent resource, and that the task resource + consequently does not exist. + The "ProblemDetails" structure may be provided, including in the + "detail" attribute information about the source of the problem, e.g. a + wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 405: + description: > + Method Not Allowed + If a particular HTTP method is not supported for a particular + resource, the API producer shall respond with this response code. + The "ProblemDetails" structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 406: + description: > + 406 Not Acceptable + + If the "Accept" header does not contain at least one + name of a content type for which the NFVO can + provide a representation of the NSD, the NFVO shall + respond with this response code. + The "ProblemDetails" structure may be included with + the "detail" attribute providing more information about + the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 412: + description: > + Precondition Failed. + A precondition given in an HTTP request header is not fulfilled. + + Typically, this is due to an ETag mismatch, indicating that the + resource was modified by another entity. + + The response body should + contain a ProblemDetails structure, in which the "detail" attribute + should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 416: + description: > + The byte range passed in the "Range" header did not + match any available byte range in the NSD file (e.g. access after end of file). + The response body may contain a ProblemDetails structure. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 422: + description: > + Unprocessable Entity + If the payload body of a request contains syntactically correct + data (e.g. well-formed JSON) but the data cannot be processed + (e.g. because it fails validation against a schema), the API + producer shall respond with this response code. The + "ProblemDetails" structure shall be provided, and should include + in the "detail" attribute more information about the source of the + problem. + NOTE 2: This error response code is only applicable for methods + that have a request body. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 500: + description: > + Internal Server Error + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code + ("catch all error"), the API producer shall respond with this + response code. The ProblemDetails structure shall be provided, + and shall include in the "detail" attribute more information about + the source of the problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 503: + description: > + Service Unavailable + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the Retry-After HTTP header and for the alternative + to refuse the connection. The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml index 0b4066c..cc2d62a 100644 --- a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml +++ b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml @@ -13,7 +13,7 @@ info: license: name: "ETSI Forge copyright notice" url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - contact: + contact: name: "NFV-SOL WG" externalDocs: description: ETSI GS NFV-SOL 005 V2.4.1 @@ -26,9 +26,9 @@ consumes: produces: - "application/json" paths: -############################################################################### -# Alarms # -############################################################################### + ############################################################################### + # Alarms # + ############################################################################### '/alarms': #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.2 get: @@ -42,7 +42,7 @@ paths: in: "query" required: false type: "string" - description: > + description: > Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. @@ -81,7 +81,7 @@ paths: 200: description: > 200 OK - + The request has succeeded. The response body shall contain the list of related alarms. headers: @@ -109,7 +109,7 @@ paths: items: properties: Alarm: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/Alarm" + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/Alarm" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -123,11 +123,11 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual alarm # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + + ############################################################################### + # Individual alarm # + ############################################################################### '/alarms/{alarmId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.3 parameters: @@ -173,11 +173,11 @@ paths: in: header required: true type: string - responses: + responses: 200: description: > 200 OK - + Information about an individual alarm was read successfully. The response body shall contain a representation of the individual alarm. @@ -204,13 +204,13 @@ paths: schema: properties: Alarm: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/Alarm" + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/Alarm" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 405: $ref: "responses/SOL005_resp.yaml#/responses/405" 406: @@ -218,60 +218,60 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" patch: summary: Acknowledge individual alarm. description: > Acknowledge Alarm - + This method modifies an individual alarm resource. parameters: - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "AlarmModifications" - properties: - AlarmModifications: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmModifications" - description: > - The parameter for the alarm modification, as defined in clause 8.5.2.8. - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The Content-Type header shall be set to - "application/merge-patch+json" according to - IETF RFC 7396. - in: header - required: true - type: string - enum: ["application/merge-patch+json"] - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: true - type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "AlarmModifications" + properties: + AlarmModifications: + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmModifications" + description: > + The parameter for the alarm modification, as defined in clause 8.5.2.8. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The Content-Type header shall be set to + "application/merge-patch+json" according to + IETF RFC 7396. + in: header + required: true + type: string + enum: ["application/merge-patch+json"] + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > 200 OK - + The request was accepted and completed. The response body shall contain attribute modifications for an 'Individual alarm' resource (see clause 8.5.2.4). @@ -317,14 +317,14 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################## -#Subscriptions # -############################################################################## + ############################################################################## + #Subscriptions # + ############################################################################## '/subscriptions': #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.4 post: summary: Subscribe to alarms related to NSs. - description: > + description: > The POST method creates a new subscription. This method shall follow the provisions specified in the Tables 8.4.4.3.1-1 and 8.4.4.3.1-2 for URI query parameters, request and response data structures, and response codes. @@ -334,7 +334,7 @@ paths: same filter and callbackUri already exists (in which case it shall return the "201 Created" response code), or may decide to not create a duplicate subscription resource (in which case it shall return a "303 See Other" response code referencing the existing subscription resource with the same filter and callbackUri). - parameters: + parameters: - name: Accept description: > Content-Types that are acceptable for the response. @@ -368,18 +368,18 @@ paths: schema: type: "object" required: - - "FmSubscriptionRequest" + - "FmSubscriptionRequest" properties: FmSubscriptionRequest: $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscriptionRequest" description: > Details of the subscription to be created, as defined in clause 8.5.2.2. - + responses: 201: description: > 201 Created - + The subscription was created successfully. The response body shall contain a representation of the created subscription resource. @@ -431,11 +431,11 @@ paths: summary: Query multiple subscriptions. description: > Query Subscription Information - + The client can use this method to retrieve the list of active subscriptions for alarms related to a NS subscribed by the client. It can be used e.g. for resynchronization after error situations. - + This method shall follow the provisions specified in the Tables 8.4.4.3.2-1 and 8.4.4.3.2-2 for URI query parameters, request and response data structures, and response codes. Table 8.4.4.3.2-1: URI query parameters supported. @@ -445,7 +445,7 @@ paths: in: "query" required: false type: "string" - description: > + description: > Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. @@ -482,7 +482,7 @@ paths: 200: description: > 200 OK - + The list of subscriptions was queried successfully. The response body shall contain the representations of all active subscriptions of the functional block that @@ -512,7 +512,7 @@ paths: items: properties: FmSubscription: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscription" + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscription" 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-based-filtering-error" 401: @@ -529,10 +529,10 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual subscription # -############################################################################### + + ############################################################################### + # Individual subscription # + ############################################################################### '/subscriptions/{subscriptionId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.5 parameters: @@ -550,7 +550,7 @@ paths: summary: Read an individual subscription. description: > Query Subscription Information - + The client can use this method for reading an individual subscription for alarms related to NSs subscribed by the client. This method shall follow the provisions specified in the Tables 8.4.5.3.2-1 and 8.4.5.3.2-2 for URI query parameters, request and response data structures, and response codes @@ -586,7 +586,7 @@ paths: 200: description: > 200 OK - + The operation has completed successfully. The response body shall contain a representation of the subscription resource. @@ -634,7 +634,7 @@ paths: summary: Terminate a subscription. description: > Terminate Subscription - + This method terminates an individual subscription. parameters: - name: Authorization @@ -652,9 +652,9 @@ paths: type: string responses: 204: - description: > + description: > 204 - No Content - + The subscription resource was deleted successfully. The response body shall be empty. headers: @@ -686,12 +686,12 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -################################################################################## -# Notification endpoint # -# Dummy URI is used for testing. # -# In real, resource URI is provided by the client when creating the subscription.# -################################################################################## + + ################################################################################## + # Notification endpoint # + # Dummy URI is used for testing. # + # In real, resource URI is provided by the client when creating the subscription.# + ################################################################################## '/URI_is_provided_by_the_client_when_creating_the_subscription-AlarmNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6 post: @@ -708,7 +708,7 @@ paths: schema: properties: AlarmNotification: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmNotification" + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -740,7 +740,7 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. The response body shall be empty. headers: @@ -763,12 +763,12 @@ paths: 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + '/URI_is_provided_by_the_client_when_creating_the_subscription-AlarmClearedNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6 post: @@ -783,8 +783,8 @@ paths: required: true schema: properties: - AlarmClearedNotification: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmClearedNotification" + AlarmClearedNotification: + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmClearedNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -816,7 +816,7 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. The response body shall be empty. headers: @@ -839,11 +839,11 @@ paths: 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" '/URI_is_provided_by_the_client_when_creating_the_subscription-AlarmListRebuiltNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6 @@ -859,8 +859,8 @@ paths: required: true schema: properties: - AlarmListRebuiltNotification: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification" + AlarmListRebuiltNotification: + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -892,7 +892,7 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. The response body shall be empty. headers: @@ -915,12 +915,12 @@ paths: 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + get: summary: Test the notification endpoint description: > @@ -951,7 +951,7 @@ paths: 204: description: > 204 No Content - + The notification endpoint was tested successfully. The response body shall be empty. headers: @@ -962,13 +962,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: diff --git a/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml b/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml index 2feda90..5ef991a 100644 --- a/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml +++ b/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml @@ -6,18 +6,18 @@ definitions: The alarm data type encapsulates information about an alarm. It shall comply with the provisions defined in Table 8.5.2.4-1 type: object - required: + required: - id - managedObjectId - - alarmRaisedTime + - alarmRaisedTime - rootCauseFaultyComponent - ackState - perceivedSeverity - eventTime - eventType - - probableCause + - probableCause - isRootCause - - _links + - _links properties: id: description: > @@ -36,7 +36,7 @@ definitions: The virtualised resources that are causing the NS fault. It shall be present when the faulty component is "NS Virtual Link" or "VNF". - $ref: "#/definitions/FaultyResourceInfo" + $ref: "#/definitions/FaultyResourceInfo" alarmRaisedTime: description: > Alarm identifier. @@ -44,11 +44,11 @@ definitions: alarmChangedTime: description: > The time stamp indicating when the alarm was cleared. - $ref: "SOL005_def.yaml#/definitions/DateTime" + $ref: "SOL005_def.yaml#/definitions/DateTime" alarmClearedTime: description: > Links to resources related to this notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" + $ref: "SOL005_def.yaml#/definitions/DateTime" ackState: description: > Acknowledgment state of the alarm. @@ -78,7 +78,7 @@ definitions: probableCause: description: > Information about the probable cause of the fault. - type: string + type: string isRootCause: description: > Attribute indicating if this fault is the root for other @@ -89,7 +89,7 @@ definitions: description: > List of identifiers of other alarms correlated to this fault. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" faultDetails: description: > @@ -105,22 +105,22 @@ definitions: self: description: > URI of this resource. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "SOL005_def.yaml#/definitions/Link" objectInstance: description: > Link to the resource representing the NS instance to which the notified alarm is correlated. Shall be present if the NS instance information is accessible as a resource. - $ref: "SOL005_def.yaml#/definitions/Link" - + $ref: "SOL005_def.yaml#/definitions/Link" + AlarmClearedNotification: description: > This type represents an alarm cleared notification about VNF faults. The notification shall be triggered by the VNFM when an alarm has been cleared. type: object - required: + required: - id - notificationType - subscriptionId @@ -140,7 +140,7 @@ definitions: Discriminator for the different notification types. Shall be set to "AlarmClearedNotification" for this notification type. type: string - enum: + enum: - AlarmClearedNotification subscriptionId: description: > @@ -161,11 +161,11 @@ definitions: description: > Links to resources related to this notification. type: object - required: + required: - subscription - alarm - properties: - subscription: + properties: + subscription: description: > Link to the related subscription. $ref: "SOL005_def.yaml#/definitions/Link" @@ -182,7 +182,7 @@ definitions: The notification shall be triggered by the VNFM when the alarm list has been rebuilt. type: object - required: + required: - id - notificationType - subscriptionId @@ -200,7 +200,7 @@ definitions: Discriminator for the different notification types. Shall be set to "AlarmListRebuiltNotification" for this notification type. type: string - enum: + enum: - AlarmListRebuiltNotification subscriptionId: description: > @@ -214,11 +214,11 @@ definitions: description: > Links to resources related to this notification. type: object - required: + required: - subscription - alarms - properties: - subscription: + properties: + subscription: description: > Link to the related subscription. $ref: "SOL005_def.yaml#/definitions/Link" @@ -236,7 +236,7 @@ definitions: type: object required: - ackState - properties: + properties: ackState: description: > New value of the "ackState" attribute in "Alarm". @@ -262,7 +262,7 @@ definitions: - EQUIPMENT_ALARM: An alarm of this type is associated with an equipment fault (ITU-T Recommendation X.733). type: string - enum: + enum: - COMMUNICATIONS_ALARM - PROCESSING_ERROR_ALARM - ENVIRONMENTAL_ALARM @@ -273,10 +273,10 @@ definitions: description: > This type represents the faulty virtual resources that have a negative impact on a NS. type: object - required: + required: - faultyResource - faultyResourceType - properties: + properties: faultyResource: description: > Information that identifies the faulty resource instance and @@ -296,7 +296,7 @@ definitions: - STORAGE - Virtual storage resource. - NETWORK - Virtual network resource. type: string - enum: + enum: - COMPUTE - STORAGE - NETWORK @@ -335,37 +335,37 @@ definitions: description: > Match alarms related to NSs with a faulty resource type listed in this attribute. type: array - items: + items: $ref: "#/definitions/FaultyResourceType" perceivedSeverities: description: > Match VNF alarms with a perceived severity listed in this attribute. type: array - items: + items: $ref: "#/definitions/PerceivedSeverityType" eventTypes: description: > Match VNF alarms with an event type listed in this attribute. type: array - items: + items: $ref: "#/definitions/EventType" probableCauses: description: > Match VNF alarms with a probable cause listed in this attribute. type: array - items: - type: string + items: + type: string FmSubscription: description: > This type represents a subscription related to notifications about VNF faults. type: object - required: + required: - id - callbackUri - _links - properties: + properties: id: description: > Identifier of this subscription resource. @@ -399,7 +399,7 @@ definitions: This type represents a subscription request related to notifications about VNF faults. type: object - required: + required: - callbackUri properties: filter: @@ -454,21 +454,21 @@ definitions: managed object that have the same Alarm type, Probable cause and Specific problems (if given) (ITU-T Recommendation X.733). type: string - enum: + enum: - CRITICAL - MAJOR - MINOR - WARNING - INDETERMINATE - CLEARED - + FaultyComponentInfo: description: > This type represents the faulty component that has a negative impact on an NS. It shall comply with the provisions defined in Table 8.5.3.4-1. type: object - properties: + properties: faultyNestedNsInstanceId: description: > Identifier of the faulty nested NS instance. @@ -481,12 +481,12 @@ definitions: description: > Identifier of the faulty VNF instance. $ref: "SOL005_def.yaml#/definitions/Identifier" - + AlarmNotification: description: > This type represents an alarm notification about NS faults. type: object - required: + required: - id - notificationType - subscriptionId @@ -505,7 +505,7 @@ definitions: Discriminator for the different notification types. Shall be set to "AlarmNotification" for this notification type. type: string - enum: + enum: - AlarmClearedNotification subscriptionId: description: > @@ -527,11 +527,11 @@ definitions: description: > Links to resources related to this notification. type: object - required: + required: - subscription - alarm - properties: - subscription: + properties: + subscription: description: > Link to the related subscription. $ref: "SOL005_def.yaml#/definitions/Link" diff --git a/src/SOL005/NSFaultManagement/definitions/SOL005_def.yaml b/src/SOL005/NSFaultManagement/definitions/SOL005_def.yaml index 333b278..f3690ee 100644 --- a/src/SOL005/NSFaultManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/NSFaultManagement/definitions/SOL005_def.yaml @@ -1,269 +1,269 @@ - definitions: - Identifier: - description: > - An identifier with the intention of being globally unique. - type: string - DateTime: - description: > - Date-time stamp. - Representation: String formatted according to IETF RFC 3339. - type: string - format: "date-time" - ProblemDetails: - #SOL005 location: 4.3.5.3-1 - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced in this structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present document, - to ensure that the response contains additional textual information about - an error. IETF RFC 7807 [19] foresees extensibility of the - "ProblemDetails" type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to define - additional attributes that provide more information about the error. - The description column only provides some explanation of the meaning to - Facilitate understanding of the design. For a full description, see - IETF RFC 7807 [19]. - type: object - required: - - statussss - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies the - problem type. It is encouraged that the URI provides human-readable - documentation for the problem (e.g. using HTML) when dereferenced. - When this member is not present, its value is assumed to be - "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should not - change from occurrence to occurrence of the problem, except for - purposes of localization. If type is given and other than - "about:blank", this attribute shall also be provided. - A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of the - problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by the origin - server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of the - problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - ResourceHandle: - required: - - resourceId - type: object - description: > - This type represents the information that allows addressing a virtualised resource that is used by a VNF instance or by - an NS instance. Information about the resource is available from the VIM. The ResourceHandle type shall comply with - the provisions defined in Table 6.5.3.54-1.. - properties: - vimId: - description: > - Identifier of the VIM under whose control this resource is placed. - This attribute shall be present if VNF-related resource - management in direct mode is applicable. It shall also - be present for resources that are part of an NS instance - such as virtual link resources. - $ref: "#/definitions/Identifier" - resourceProviderId: - description: > - Identifier of the entity responsible for the management of - the resource. - This attribute shall only be supported and present when - VNF-related resource management in indirect mode is - applicable. The identification scheme is outside the - scope of the present document. - $ref: "#/definitions/Identifier" - resourceId: - description: > - Identifier of the resource in the scope of the VIM or the - resource provider. - $ref: "#/definitions/IdentifierInVim" - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or the resource provider. - type: string - - IdentifierInVim: - description: > - An identifier maintained by the VIM or other resource provider. It is - expected to be unique within the VIM instance. - type: string - - Link: - description: > - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: > - URI of the referenced resource. - type: string - format: url - - SubscriptionAuthentication: - description: > - Authentication parameters to conFigure the use of - Authorization when sendingnotifications corresponding to - this subscription, as defined in clause 4.5.3.4. - This attribute shall only be present if the subscriber - requires authorization of notifications. - type: object - required: - - authType - properties: - authType: - description: > - Defines the types of Authentication / Authorization which the API - consumer is willing to accept when receiving a notification. - Permitted values: - * BASIC: In every HTTP request to the notification endpoint, use - HTTP Basic authentication with the client credentials. - * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the - notification endpoint, use an OAuth 2.0 Bearer token, obtained - using the client credentials grant type. - * TLS_CERT: Every HTTP request to the notification endpoint is sent - over a mutually authenticated TLS session, i.e. not only the - server is authenticated, but also the client is authenticated - during the TLS tunnel setup. - type: array - items: - type: string - enum: - - BASIC - - OAUTH2_CLIENT_CREDENTIALS - - TLS_CERT - paramsBasic: - description: > - Parameters for authentication/authorization using BASIC. - Shall be present if authType is "BASIC" and the contained - information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - userName: - description: > - Username to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - password: - description: > - Password to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - paramsOauth2ClientCredentials: - description: > - Parameters for authentication/authorization using - OAUTH2_CLIENT_CREDENTIALS. - Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the - contained information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - clientId: - description: > - Client identifier to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a subscription shall - not be the same as the clientId and clientPassword that are used - to obtain authorization for API requests. Client credentials may - differ between subscriptions. The value of clientPassword should - be generated by a random process. - type: string - clientPassword: - description: > - Client password to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a subscription shall - not be the same as the clientId and clientPassword that are used - to obtain authorization for API requests. Client credentials may - differ between subscriptions. The value of clientPassword should - be generated by a random process. - type: string - tokenEndpoint: - description: > - The token endpoint from which the access token can be obtained. - Shall be present if it has not been provisioned out of band. - $ref: "#/definitions/Uri" - Uri: - description: > - String formatted according to IETF RFC 3986. - type: string - - String: - description: > - This type represents stack of string values - type: string - - NsInstanceSubscriptionFilter: - required: - - nsdIds - - vnfdIds - - pnfdIds - - nsInstanceIds - type: object - description: > - This type represents subscription filter criteria to match NS instances. - It shall comply with the provisions defined in Table 4.4.1.5-1. - properties: - nsdIds: - description: > - If present, match NS instances that were created - based on a NSD identified by one of the nsdId - values listed in this attribute. - type: array - items: - $ref: "#/definitions/Identifier" - vnfdIds: - description: > - If present, match NS instances that contain VNF - instances that were created based on a VNFD - identified by one of the vnfdId values listed in - this attribute. - type: array - items: - $ref: "#/definitions/Identifier" - pnfdIds: - description: > - If present, match NS instances that contain - PNFs that are represented by a PNFD identified - by one of the pnfdId values listed in this attribute. - type: array - items: - $ref: "#/definitions/Identifier" - nsInstanceIds: - description: > - If present, match NS instances with an instance - dentifier listed in this attribute. - type: array - items: - $ref: "#/definitions/Identifier" - nsInstanceNames: - description: > - If present, match NS instances with a NS - Instance Name listed in this attribute. - type: array - items: - $ref: "#/definitions/String" \ No newline at end of file +definitions: + Identifier: + description: > + An identifier with the intention of being globally unique. + type: string + DateTime: + description: > + Date-time stamp. + Representation: String formatted according to IETF RFC 3339. + type: string + format: "date-time" + ProblemDetails: + #SOL005 location: 4.3.5.3-1 + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced in this structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present document, + to ensure that the response contains additional textual information about + an error. IETF RFC 7807 [19] foresees extensibility of the + "ProblemDetails" type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to define + additional attributes that provide more information about the error. + The description column only provides some explanation of the meaning to + Facilitate understanding of the design. For a full description, see + IETF RFC 7807 [19]. + type: object + required: + - statussss + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies the + problem type. It is encouraged that the URI provides human-readable + documentation for the problem (e.g. using HTML) when dereferenced. + When this member is not present, its value is assumed to be + "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should not + change from occurrence to occurrence of the problem, except for + purposes of localization. If type is given and other than + "about:blank", this attribute shall also be provided. + A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of the + problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by the origin + server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of the + problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + ResourceHandle: + required: + - resourceId + type: object + description: > + This type represents the information that allows addressing a virtualised resource that is used by a VNF instance or by + an NS instance. Information about the resource is available from the VIM. The ResourceHandle type shall comply with + the provisions defined in Table 6.5.3.54-1.. + properties: + vimId: + description: > + Identifier of the VIM under whose control this resource is placed. + This attribute shall be present if VNF-related resource + management in direct mode is applicable. It shall also + be present for resources that are part of an NS instance + such as virtual link resources. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifier of the entity responsible for the management of + the resource. + This attribute shall only be supported and present when + VNF-related resource management in indirect mode is + applicable. The identification scheme is outside the + scope of the present document. + $ref: "#/definitions/Identifier" + resourceId: + description: > + Identifier of the resource in the scope of the VIM or the + resource provider. + $ref: "#/definitions/IdentifierInVim" + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or the resource provider. + type: string + + IdentifierInVim: + description: > + An identifier maintained by the VIM or other resource provider. It is + expected to be unique within the VIM instance. + type: string + + Link: + description: > + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: > + URI of the referenced resource. + type: string + format: url + + SubscriptionAuthentication: + description: > + Authentication parameters to conFigure the use of + Authorization when sendingnotifications corresponding to + this subscription, as defined in clause 4.5.3.4. + This attribute shall only be present if the subscriber + requires authorization of notifications. + type: object + required: + - authType + properties: + authType: + description: > + Defines the types of Authentication / Authorization which the API + consumer is willing to accept when receiving a notification. + Permitted values: + * BASIC: In every HTTP request to the notification endpoint, use + HTTP Basic authentication with the client credentials. + * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the + notification endpoint, use an OAuth 2.0 Bearer token, obtained + using the client credentials grant type. + * TLS_CERT: Every HTTP request to the notification endpoint is sent + over a mutually authenticated TLS session, i.e. not only the + server is authenticated, but also the client is authenticated + during the TLS tunnel setup. + type: array + items: + type: string + enum: + - BASIC + - OAUTH2_CLIENT_CREDENTIALS + - TLS_CERT + paramsBasic: + description: > + Parameters for authentication/authorization using BASIC. + Shall be present if authType is "BASIC" and the contained + information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + userName: + description: > + Username to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + password: + description: > + Password to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + paramsOauth2ClientCredentials: + description: > + Parameters for authentication/authorization using + OAUTH2_CLIENT_CREDENTIALS. + Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the + contained information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + clientId: + description: > + Client identifier to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a subscription shall + not be the same as the clientId and clientPassword that are used + to obtain authorization for API requests. Client credentials may + differ between subscriptions. The value of clientPassword should + be generated by a random process. + type: string + clientPassword: + description: > + Client password to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a subscription shall + not be the same as the clientId and clientPassword that are used + to obtain authorization for API requests. Client credentials may + differ between subscriptions. The value of clientPassword should + be generated by a random process. + type: string + tokenEndpoint: + description: > + The token endpoint from which the access token can be obtained. + Shall be present if it has not been provisioned out of band. + $ref: "#/definitions/Uri" + Uri: + description: > + String formatted according to IETF RFC 3986. + type: string + + String: + description: > + This type represents stack of string values + type: string + + NsInstanceSubscriptionFilter: + required: + - nsdIds + - vnfdIds + - pnfdIds + - nsInstanceIds + type: object + description: > + This type represents subscription filter criteria to match NS instances. + It shall comply with the provisions defined in Table 4.4.1.5-1. + properties: + nsdIds: + description: > + If present, match NS instances that were created + based on a NSD identified by one of the nsdId + values listed in this attribute. + type: array + items: + $ref: "#/definitions/Identifier" + vnfdIds: + description: > + If present, match NS instances that contain VNF + instances that were created based on a VNFD + identified by one of the vnfdId values listed in + this attribute. + type: array + items: + $ref: "#/definitions/Identifier" + pnfdIds: + description: > + If present, match NS instances that contain + PNFs that are represented by a PNFD identified + by one of the pnfdId values listed in this attribute. + type: array + items: + $ref: "#/definitions/Identifier" + nsInstanceIds: + description: > + If present, match NS instances with an instance + dentifier listed in this attribute. + type: array + items: + $ref: "#/definitions/Identifier" + nsInstanceNames: + description: > + If present, match NS instances with a NS + Instance Name listed in this attribute. + type: array + items: + $ref: "#/definitions/String" \ No newline at end of file diff --git a/src/SOL005/NSFaultManagement/responses/NSFManagement_resp.yaml b/src/SOL005/NSFaultManagement/responses/NSFManagement_resp.yaml index 5bb238a..45941a9 100644 --- a/src/SOL005/NSFaultManagement/responses/NSFManagement_resp.yaml +++ b/src/SOL005/NSFaultManagement/responses/NSFManagement_resp.yaml @@ -2,7 +2,7 @@ responses: 409-alarm-state-conflict: description: > Conflict - + Error: The operation cannot be executed currently, due to a conflict with the state of the "Individual alarm" resource. Typically, this is due to the fact that the alarm is already diff --git a/src/SOL005/NSFaultManagement/responses/SOL005_resp.yaml b/src/SOL005/NSFaultManagement/responses/SOL005_resp.yaml index 30ea9e9..088389c 100644 --- a/src/SOL005/NSFaultManagement/responses/SOL005_resp.yaml +++ b/src/SOL005/NSFaultManagement/responses/SOL005_resp.yaml @@ -1,195 +1,195 @@ - # Copyright (c) ETSI 2017. - # https://forge.etsi.org/etsi-forge-copyright-notice.txt - responses: - 303: - description: > - See Other - - A subscription with the same callbackURI and the same - filter already exits and the policy of the NFVO is to not - create redundant subscriptions. - The HTTP response shall include a "Location" HTTP - eader that contains the resource URI of the existing - subscription resource. - The response body shall be empty. - 400: - description: > - Bad Request - - Error: Invalid attribute-based filtering parameters. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute should convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 400-attr-based-filtering-error: - description: > - Bad Request - Invalid attribute-based filtering parameters or Invalid attribute - selector. - It the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided, - and should include in the "detail" attribute more information about - the source of the problem. - If the request contains a malformed access token, the API producer - should respond with this response. The details of the error shall - be returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be - provided. - If there is an application error related to the client's input that - cannot be easily mapped to any other HTTP response code ("catch all - error"), the API producer shall respond with this response code.The - "ProblemDetails" structure shall be provided, and shall include in - the "detail" attribute more information about the source of the - problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 401: - description: > - Unauthorized. - If the request contains no access token even though one is - required, or if the request contains an authorization token that - is invalid (e.g. expired or revoked), the API producer should - respond with this response. The details of the error shall be - returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails - structure may be provided. - headers: - Content-Type: - type: string - description: The MIME type of the body of the response. - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 403: - description: > - Forbidden - If the API consumer is not allowed to perform a particular request - to a particular resource, the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided. - It should include in the "detail" attribute information about the - source of the problem, and may indicate how to solve it. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 405: - description: > - Method Not Allowed - If a particular HTTP method is not supported for a particular - resource, the API producer shall respond with this response code. - The "ProblemDetails" structure may be omitted in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 406: - description: > - If the "Accept" header does not contain at least one - name of a content type for which the NFVO can - provide a representation of the NSD, the NFVO shall - respond with this response code. - The "ProblemDetails" structure may be included with - the "detail" attribute providing more information about - the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 412: - description: > - Precondition Failed. - - Error: A precondition given in an HTTP request header - is not fulfilled. - Typically, this is due to an ETag mismatch, indicating - that the resource was modified by another entity. - The response body should contain a ProblemDetails - structure, in which the "detail" attribute should convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 500: - description: > - Internal Server Error - If there is an application error not related to the client's input - that cannot be easily mapped to any other HTTP response code - ("catch all error"), the API producer shall respond withthis - response code. The ProblemDetails structure shall be provided, - and shall include in the "detail" attribute more information about - the source of the problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 503: - description: > - Service Unavailable - If the API producer encounters an internal overload situation of - itself or of a system it relies on, it should respond with this - response code, following the provisions in IETF RFC 7231 [13] for - the use of the Retry-After HTTP header and for the alternative - to refuse the connection. The "ProblemDetails" structure may be omitted. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +responses: + 303: + description: > + See Other + + A subscription with the same callbackURI and the same + filter already exits and the policy of the NFVO is to not + create redundant subscriptions. + The HTTP response shall include a "Location" HTTP + eader that contains the resource URI of the existing + subscription resource. + The response body shall be empty. + 400: + description: > + Bad Request + + Error: Invalid attribute-based filtering parameters. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute should convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 400-attr-based-filtering-error: + description: > + Bad Request + Invalid attribute-based filtering parameters or Invalid attribute + selector. + It the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, + and should include in the "detail" attribute more information about + the source of the problem. + If the request contains a malformed access token, the API producer + should respond with this response. The details of the error shall + be returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be + provided. + If there is an application error related to the client's input that + cannot be easily mapped to any other HTTP response code ("catch all + error"), the API producer shall respond with this response code.The + "ProblemDetails" structure shall be provided, and shall include in + the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 401: + description: > + Unauthorized. + If the request contains no access token even though one is + required, or if the request contains an authorization token that + is invalid (e.g. expired or revoked), the API producer should + respond with this response. The details of the error shall be + returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails + structure may be provided. + headers: + Content-Type: + type: string + description: The MIME type of the body of the response. + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 403: + description: > + Forbidden + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. + It should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 405: + description: > + Method Not Allowed + If a particular HTTP method is not supported for a particular + resource, the API producer shall respond with this response code. + The "ProblemDetails" structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 406: + description: > + If the "Accept" header does not contain at least one + name of a content type for which the NFVO can + provide a representation of the NSD, the NFVO shall + respond with this response code. + The "ProblemDetails" structure may be included with + the "detail" attribute providing more information about + the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 412: + description: > + Precondition Failed. + + Error: A precondition given in an HTTP request header + is not fulfilled. + Typically, this is due to an ETag mismatch, indicating + that the resource was modified by another entity. + The response body should contain a ProblemDetails + structure, in which the "detail" attribute should convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 500: + description: > + Internal Server Error + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code + ("catch all error"), the API producer shall respond withthis + response code. The ProblemDetails structure shall be provided, + and shall include in the "detail" attribute more information about + the source of the problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 503: + description: > + Service Unavailable + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the Retry-After HTTP header and for the alternative + to refuse the connection. The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml b/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml index c0f218e..dc3dbb2 100644 --- a/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml +++ b/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml @@ -13,7 +13,7 @@ info: license: name: "ETSI Forge copyright notice" url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - contact: + contact: name: "NFV-SOL WG" externalDocs: description: ETSI GS NFV-SOL 005 V2.4.1 @@ -24,11 +24,11 @@ schemes: consumes: - "application/json" produces: - - "application/json" + - "application/json" paths: -############################################################################### -# NSInstances # -############################################################################### + ############################################################################### + # NSInstances # + ############################################################################### '/ns_instances': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.2 post: @@ -56,24 +56,24 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string - name: "body" in: "body" required: true schema: type: "object" required: - - "CreateNsRequest" + - "CreateNsRequest" properties: CreateNsRequest: $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/CreateNsRequest" description: > The NS creation parameters, as defined in clause 6.5.2.7. - responses: + responses: 201: description: > 201 Created - + A NS Instance identifier was created successfully. The response body shall contain a representation of the created NS instance, as defined in clause 6.5.2.8. @@ -119,12 +119,12 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" get: summary: Query multiple NS instances. description: > Query NS Instances. - + The GET method queries information about multiple NS instances. This method shall support the URI query parameters, request and response data structures, and response codes, as specified in the Tables 6.4.2.3.2-1 and 6.4.2.3.2-2. @@ -133,7 +133,7 @@ paths: in: "query" required: false type: "string" - description: > + description: > "Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. @@ -143,28 +143,28 @@ paths: in: "query" required: false type: "string" - description: > + description: > "Include all complex attributes in the response. See clause 4.3.3 for details. The NFVO shall support this parameter." - name: "fields" in: "query" required: false type: "string" - description: > + description: > "Complex attributes to be included into the response. See clause 4.3.3 for details. The NFVO should support this parameter." - name: "exclude_fields" in: "query" required: false type: "string" - description: > + description: > "Complex attributes to be excluded from the response. See clause 4.3.3 for details. The NFVO should support this parameter." - name: "exclude_default" in: "query" required: false type: "string" - description: > + description: > "Indicates to exclude the following complex attributes from the response. See clause 4.3.3 for details. The NFVO shall support this parameter. The following attributes shall be excluded from the NsInstance structure in @@ -190,12 +190,12 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string responses: 200: description: > 200 OK - + Information about zero or more NS instances was queried successfully. The response body shall contain representations of @@ -214,13 +214,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 schema: type: array items: properties: NsInstance: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -241,10 +241,10 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual NS instance # -############################################################################### + + ############################################################################### + # Individual NS instance # + ############################################################################### '/ns_instances/{nsInstanceId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.3 parameters: @@ -285,7 +285,7 @@ paths: 200: description: > 200 OK - + Information about an individual NS instance was queried successfully. The response body shall contain a representation of the NS instance. schema: @@ -300,7 +300,7 @@ paths: The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. maximum: 1 - minimum: 1 + minimum: 1 WWW-Authenticate: type: "string" description: > @@ -328,13 +328,13 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + delete: summary: Delete NS instance resource. description: > Delete NS Identifier - + This method deletes an individual NS instance resource. parameters: - name: Authorization @@ -348,7 +348,7 @@ paths: 204: description: > 204 No Content - + The NS instance resource and the associated NS identifier were deleted successfully. The response body shall be empty. @@ -382,9 +382,9 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Instantiate NS task # -############################################################################### + ############################################################################### + # Instantiate NS task # + ############################################################################### '/ns_instances/{nsInstanceId}/instantiate': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.4 parameters: @@ -394,44 +394,44 @@ paths: in: path type: string required: true - post: + post: summary: Instantiate a NS. description: > The POST method requests to instantiate a NS instance resource. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "InstantiateNsRequest" - properties: - InstantiateNsRequest: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/InstantiateNsRequest" - description: > - Parameters for the instantiate NS operation, as defined in clause 6.5.2.10. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "InstantiateNsRequest" + properties: + InstantiateNsRequest: + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/InstantiateNsRequest" + description: > + Parameters for the instantiate NS operation, as defined in clause 6.5.2.10. responses: 202: $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location" @@ -455,10 +455,10 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Scale NS task # -############################################################################### + + ############################################################################### + # Scale NS task # + ############################################################################### '/ns_instances/{nsInstanceId}/scale': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.5 parameters: @@ -468,44 +468,44 @@ paths: in: path type: string required: true - post: + post: summary: Scale a NS instance. description: > The POST method requests to scale a NS instance resource. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "ScaleNsRequest" - properties: - ScaleNsRequest: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/ScaleNsRequest" - description: > - Parameters for the scale NS operation, as defined in clause 6.5.2.13. + parameters: + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "ScaleNsRequest" + properties: + ScaleNsRequest: + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/ScaleNsRequest" + description: > + Parameters for the scale NS operation, as defined in clause 6.5.2.13. responses: 202: $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location" @@ -520,17 +520,17 @@ paths: 405: $ref: "responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "responses/SOL005_resp.yaml#/responses/406" 409: $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Update NS task # -############################################################################### + + ############################################################################### + # Update NS task # + ############################################################################### '/ns_instances/{nsInstanceId}/update': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.6 parameters: @@ -540,48 +540,48 @@ paths: in: path type: string required: true - post: + post: summary: Updates a NS instance. description: > Scale NS instance. The POST method requests to scale a NS instance resource. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "UpdateNsRequest" - properties: - UpdateNsRequest: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/UpdateNsRequest" - description: > - Parameters for the update NS operation, as defined in clause 6.5.2.11. + parameters: + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "UpdateNsRequest" + properties: + UpdateNsRequest: + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/UpdateNsRequest" + description: > + Parameters for the update NS operation, as defined in clause 6.5.2.11. responses: 202: - $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location" + $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -600,10 +600,10 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Heal NS task # -############################################################################### + + ############################################################################### + # Heal NS task # + ############################################################################### '/ns_instances/{nsInstanceId}/heal': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.7 parameters: @@ -614,46 +614,46 @@ paths: type: string required: true post: - summary: Heal a NS instance. - description: > + summary: Heal a NS instance. + description: > The POST method requests to heal a NS instance resource. This method shall follow the provisions specified in the Tables 6.4.7.3.1-1 and 6.4.7.3.1-2 for URI query parameters, request and response data structures, and response codes. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "HealNsRequest" - properties: - HealNsRequest: - $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/HealNsRequest" - description: > - Parameters for the heal NS operation, as defined in clause 6.5.2.12. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "HealNsRequest" + properties: + HealNsRequest: + $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/HealNsRequest" + description: > + Parameters for the heal NS operation, as defined in clause 6.5.2.12. responses: 202: $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location" @@ -674,11 +674,11 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Terminate NS task # -############################################################################### + ############################################################################### + # Terminate NS task # + ############################################################################### '/ns_instances/{nsInstanceId}/terminate': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.8 parameters: @@ -700,42 +700,42 @@ paths: response data structures, and response codes, as specified in the Tables 6.4.8.3.1-1 and 6.8.8.3.1-2. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "TerminateNsRequest" - properties: - TerminateNsRequest: - $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/TerminateNsRequest" - description: > - The terminate NS request parameters, as defined in clause 6.5.2.14. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "TerminateNsRequest" + properties: + TerminateNsRequest: + $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/TerminateNsRequest" + description: > + The terminate NS request parameters, as defined in clause 6.5.2.14. responses: 202: - $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location" + $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/202-with-Location" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -753,11 +753,11 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# NS LCM operation occurrences # -############################################################################### + ############################################################################### + # NS LCM operation occurrences # + ############################################################################### '/ns_lcm_op_occs': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.9 get: @@ -773,7 +773,7 @@ paths: in: "query" required: false type: "string" - description: > + description: > Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply an attribute filter. @@ -783,21 +783,21 @@ paths: in: "query" required: false type: "string" - description: > + description: > Complex attributes to be included into the response. See clause 4.3.3 for details. The NFVO should support this parameter. - name: "exclude_fields" in: "query" required: false type: "string" - description: > + description: > Complex attributes to be excluded from the response. See clause 4.3.3 for details. The NFVO should support this parameter. - name: "exclude_default" in: "query" required: false type: "string" - description: > + description: > Indicates to exclude the following complex attributes from the response. See clause 4.3.3 for details. The NFVO shall support this parameter. The following attributes shall be excluded from the NsLcmOpOcc structure in the @@ -824,7 +824,7 @@ paths: 200: description: > 200 OK - + Status information for zero or more NS lifecycle management operation occurrences was queried successfully. The response body shall contain representations of @@ -843,13 +843,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 schema: type: array items: properties: NsLcmOpOcc: - $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc" + $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -869,9 +869,9 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Individual NS lifecycle operation occurrence # -############################################################################### + ############################################################################### + # Individual NS lifecycle operation occurrence # + ############################################################################### '/ns_lcm_op_occs/{nsLcmOpOccId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.10 parameters: @@ -881,15 +881,15 @@ paths: in: path type: string required: true - get: + get: summary: Read an individual NS LCM operation occurrence resource. description: > - The client can use this method to retrieve status information about - a NS lifecycle management operation occurrence by - reading an individual "NS LCM operation occurrence" resource. - This method shall follow the provisions specified in the - Tables 6.4.10.3.2-1 and 6.4.10.3.2-2 for URI query parameters, - request and response data structures, and response codes. + The client can use this method to retrieve status information about + a NS lifecycle management operation occurrence by + reading an individual "NS LCM operation occurrence" resource. + This method shall follow the provisions specified in the + Tables 6.4.10.3.2-1 and 6.4.10.3.2-2 for URI query parameters, + request and response data structures, and response codes. parameters: - name: Accept description: > @@ -916,13 +916,13 @@ paths: 200: description: > 200 OK - + Information about an individual NS instance was queried successfully. The response body shall contain status information about a NS lifecycle management operation occurrence (see clause 6.5.2.3). schema: - type: "object" + type: "object" properties: NsLcmOpOcc: $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc" @@ -933,7 +933,7 @@ paths: The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. maximum: 1 - minimum: 1 + minimum: 1 WWW-Authenticate: type: "string" description: > @@ -941,7 +941,7 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -961,18 +961,18 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Retry operation task # -############################################################################### + ############################################################################### + # Retry operation task # + ############################################################################### '/ns_lcm_op_occs/{nsLcmOpOccId}/retry': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.11 parameters: - name: nsLcmOpOccId description: > Identifier of a NS lifecycle management operation occurrence to be retried. - + This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request triggering a NS LCM operation. It can also be retrieved from the "nsLcmOpOccId" attribute in the NsLcmOperationOccurrenceNotification. @@ -1017,17 +1017,17 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Rollback a NS lifecycle management operation occurrence. # -############################################################################### + + ############################################################################### + # Rollback a NS lifecycle management operation occurrence. # + ############################################################################### '/ns_lcm_op_occs/{nsLcmOpOccId}/rollback': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.12 parameters: - name: nsLcmOpOccId description: > Identifier of a NS lifecycle management operation occurrence to be rolled back. - + This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request triggering a NS LCM operation. It can also be retrieved from the "nsLcmOpOccId" attribute in the NsLcmOperationOccurrenceNotification. @@ -1073,9 +1073,9 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Continue a NS lifecycle management operation occurrence. # -############################################################################### + ############################################################################### + # Continue a NS lifecycle management operation occurrence. # + ############################################################################### '/ns_lcm_op_occs/{nsLcmOpOccId}/continue': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.13 parameters: @@ -1085,7 +1085,7 @@ paths: in: path required: true type: string - post: + post: summary: Continue a NS lifecycle management operation occurrence. description: > The POST method initiates continuing an NS lifecycle operation if that operation has experienced a temporary failure, @@ -1121,17 +1121,17 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Fail operation task # -############################################################################### + + ############################################################################### + # Fail operation task # + ############################################################################### '/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}/fail': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.14 parameters: - name: nsLcmOpOccId description: > Identifier of a NS lifecycle management operation occurrence to be marked as "failed". - + This identifier can be retrieved from the resource referenced by he "Location" HTTP header in the response to a POST request triggering a NS LCM operation. @@ -1182,7 +1182,7 @@ paths: field shall be present if the response has a non-empty message body. maximum: 1 - minimum: 1 + minimum: 1 WWW-Authenticate: type: "string" description: > @@ -1190,7 +1190,7 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -1209,17 +1209,17 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Cancel operation task # -############################################################################### + + ############################################################################### + # Cancel operation task # + ############################################################################### '/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}/cancel': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.15 parameters: - name: nsLcmOpOccId description: > Identifier of a NS lifecycle management operation occurrence to be canceled. - + This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request triggering a NS LCM operation. It can also be retrieved from the "nsLcmOpOccId" attribute in the NsLcmOperationOccurrenceNotification. @@ -1237,41 +1237,41 @@ paths: Tables 6.4.15.3.1-1 and 6.4.15.3.1-2 for URI query parameters, request and response data structures, and response codes. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "CancelMode" - properties: - CancelMode: - $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/CancelMode" - description: > - The POST request to this resource shall include a CancelMode - structure in the payload body to choose between "graceful" and - "forceful" cancellation. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "CancelMode" + properties: + CancelMode: + $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/CancelMode" + description: > + The POST request to this resource shall include a CancelMode + structure in the payload body to choose between "graceful" and + "forceful" cancellation. responses: 202: $ref: "responses/SOL005_resp.yaml#/responses/202" @@ -1288,7 +1288,7 @@ paths: 406: $ref: "responses/SOL005_resp.yaml#/responses/406" 409: - description: > + description: > 409 Conflict. Error: The operation cannot be executed currently, due @@ -1321,12 +1321,12 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Subscriptions # -############################################################################### + ############################################################################### + # Subscriptions # + ############################################################################### '/subscriptions': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.16 - post: + post: summary: Subscribe to NS lifecycle change notifications. description: > The POST method creates a new subscription. @@ -1339,51 +1339,51 @@ paths: to not create a duplicate subscription resource (in which case it shall return a "303 See Other" response code referencing the existing subscription resource with the same filter and callbackUri). parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "LccnSubscriptionRequest" - properties: - LccnSubscriptionRequest: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest" - description: > - Details of the subscription to be created, as defined in clause 6.5.2.2. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "LccnSubscriptionRequest" + properties: + LccnSubscriptionRequest: + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest" + description: > + Details of the subscription to be created, as defined in clause 6.5.2.2. responses: 201: description: > 201 Created - + The subscription was created successfully. The response body shall contain a representation of the created subscription resource. The HTTP response shall include a "Location:" HTTP header that points to the created subscription resource. schema: - type: "object" + type: "object" properties: LccnSubscription: $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" @@ -1403,9 +1403,9 @@ paths: maximum: 1 minimum: 0 303: - description: > + description: > See Other. - + A subscription with the same callbackURI and the same filter already exits and the policy of the NFVO is to not create redundant subscriptions. @@ -1438,7 +1438,7 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - get: + get: summary: Query multiple subscriptions. description: > Query Subscription Information. @@ -1465,7 +1465,7 @@ paths: 200: description: > 200 OK - + The list of subscriptions was queried successfully. The response body shall contain the representations of all active subscriptions of the functional block that @@ -1484,7 +1484,7 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 schema: type: array @@ -1493,7 +1493,7 @@ paths: LccnSubscription: $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" 400: - description: > + description: > Bad Request. Invalid attribute-based filtering parameters. @@ -1530,10 +1530,10 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual subscription # -############################################################################### + + ############################################################################### + # Individual subscription # + ############################################################################### '/subscriptions/{subscriptionId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.17 parameters: @@ -1564,16 +1564,16 @@ paths: in: header required: false type: string - responses: + responses: 200: description: > 200 OK - + The operation has completed successfully. The response body shall contain a representation of the subscription resource. schema: - type: "object" + type: "object" properties: LccnSubscription: $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" @@ -1590,7 +1590,7 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -1623,9 +1623,9 @@ paths: type: string responses: 204: - description: > + description: > 204 No Content - + The subscription resource was deleted successfully. The response body shall be empty. headers: @@ -1652,11 +1652,11 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -################################################################################## -# Notification endpoint # -# Dummy URI is used for testing. # -# In real, resource URI is provided by the client when creating the subscription.# -################################################################################## + ################################################################################## + # Notification endpoint # + # Dummy URI is used for testing. # + # In real, resource URI is provided by the client when creating the subscription.# + ################################################################################## '/URI_is_provided_by_the_client_when_creating_the_subscription-NsLcmOperationOccurrenceNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.18 post: @@ -1697,12 +1697,12 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string responses: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: @@ -1712,7 +1712,7 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -1732,7 +1732,7 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" '/URI_is_provided_by_the_client_when_creating_the_subscription-NsIdentifierCreationNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.18 @@ -1751,9 +1751,9 @@ paths: in: body required: true schema: - properties: - NsIdentifierCreationNotification: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsIdentifierCreationNotification" + properties: + NsIdentifierCreationNotification: + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsIdentifierCreationNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -1774,12 +1774,12 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string responses: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: @@ -1789,7 +1789,7 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -1809,8 +1809,8 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + '/URI_is_provided_by_the_client_when_creating_the_subscription-NsIdentifierDeletionNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.18 post: @@ -1828,9 +1828,9 @@ paths: in: body required: true schema: - properties: - NsIdentifierDeletionNotification: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsIdentifierDeletionNotification" + properties: + NsIdentifierDeletionNotification: + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsIdentifierDeletionNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -1851,12 +1851,12 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string responses: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: @@ -1866,7 +1866,7 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: @@ -1886,13 +1886,13 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + get: summary: Test the notification endpoint. description: > Query NS Instances. - + The GET method queries information about multiple NS instances. This method shall support the URI query parameters, request and response data structures, and response codes, as specified in the Tables 6.4.2.3.2-1 and 6.4.2.3.2-2. @@ -1915,7 +1915,7 @@ paths: 204: description: > 204 No Content - + The notification endpoint was tested successfully. The response body shall be empty. headers: diff --git a/src/SOL005/NSLifecycleManagement/definitions/NSLifecycleManagement_def.yaml b/src/SOL005/NSLifecycleManagement/definitions/NSLifecycleManagement_def.yaml index 633135a..ce0af64 100644 --- a/src/SOL005/NSLifecycleManagement/definitions/NSLifecycleManagement_def.yaml +++ b/src/SOL005/NSLifecycleManagement/definitions/NSLifecycleManagement_def.yaml @@ -21,7 +21,7 @@ definitions: type: array items: $ref: "#/definitions/HealVnfData" - + NsLcmOpOcc: description: > This type represents a request a NS lifecycle operation occurrence. @@ -33,11 +33,11 @@ definitions: - stateEnteredTime - nsInstanceId - lcmOperationType - - startTime + - startTime - isAutomaticInvocation - operationParams - isCancelPending - - _links + - _links properties: id: description: > @@ -60,7 +60,7 @@ definitions: description: > Type of the actual LCM operation represented by this lcm operation occurrence. - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpType" + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpType" startTime: description: > Date-time of the start of the operation. @@ -92,7 +92,7 @@ definitions: - SCALE - UPDATE - HEAL - - TERMINATE + - TERMINATE isCancelPending: description: > If the LCM operation occurrence is in "PROCESSING" @@ -174,7 +174,7 @@ definitions: type: object required: - self - - nsInstance + - nsInstance properties: self: description: > @@ -198,9 +198,9 @@ definitions: $ref: "SOL005_def.yaml#/definitions/Link" rollback: description: > - Link to the task resource that represents the "rollback" - operation for this LCM operation occurrence, if rolling - back is currently allowed. + Link to the task resource that represents the "rollback" + operation for this LCM operation occurrence, if rolling + back is currently allowed. $ref: "SOL005_def.yaml#/definitions/Link" continue: description: > @@ -219,24 +219,24 @@ definitions: This type represents a parameter to select the mode of canceling an ongoing NS LCM operation occurrence. It shall comply with the provisions defined in Table 6.5.2.16-1.. type: object - required: + required: - cancelMode properties: cancelMode: description: > Cancellation mode to apply. $ref: "#/definitions/CancelModeType" - + CancelModeType: description: > Cancellation mode. - + 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 management operation, shall cancel the ongoing VNF lifecycle management and resource management operations in the underlying system, typically the VNFM and @@ -246,14 +246,14 @@ definitions: enum: - GRACEFUL - FORCEFUL - + HealNsData: description: > This type represents the information used to heal a NS. It shall comply with the provisions defined in Table 6.5.3.43-1. type: object - required: - - degreeHealing + required: + - degreeHealing properties: degreeHealing: description: > @@ -268,11 +268,11 @@ definitions: NS resetting to the original instantiation state of the NS - PARTIAL_HEALING type: string - enum: + enum: - HEAL_RESTORE - HEAL_QOS - - HEAL_RESET - - PARTIAL_HEALING + - HEAL_RESET + - PARTIAL_HEALING actionsHealing: description: > Used to specify dedicated healing actions in a @@ -290,13 +290,13 @@ definitions: order. The healScript, since it refers to a script in the NSD, can be used to execute healing actions which are defined during NS design time. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" additionalParamsforNs: description: > Allows the OSS/BSS to provide additional parameter(s) to the healing process at the NS level. $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - + HealVnfData: description: > This type represents the information to heal a VNF that is part of an NS. @@ -304,14 +304,14 @@ definitions: operation towards the appropriate VNFM. It shall comply with the provisions defined in Table 6.5.3.44-1. type: object - required: - - vnfInstanceId + required: + - vnfInstanceId properties: vnfInstanceId: description: > Identifies the VNF instance, part of the NS, requiring a healing action. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" cause: description: > Indicates the reason why a healing procedure is required. @@ -322,7 +322,7 @@ definitions: the healing process, specific to the VNF being healed. EXAMPLE: Input parameters to VNF-specific healing procedures. $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - + TerminateNsRequest: description: > This type represents a NS termination request. @@ -335,7 +335,7 @@ definitions: will be terminated automatically at this timestamp. Cardinality "0" indicates the NS termination takes place immediately $ref: "SOL005_def.yaml#/definitions/DateTime" - + ProblemDetails: description: > The definition of the general "ProblemDetails" data structure from diff --git a/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml b/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml index 2c2aea5..3a31c45 100644 --- a/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml +++ b/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml @@ -21,7 +21,7 @@ definitions: description: > Human-readable description of the NS instance to be created. type: string - + NsInstance: description: > This type represents a response for Query NS operation. @@ -55,25 +55,25 @@ definitions: description: > Identifier of the NSD information object on which the NS instance is based. This identifier was allocated by the NFVO. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" flavourId: description: > Identifier of the NS deployment flavor applied to the NS instance. This attribute shall be present if the nsState attribute value is INSTANTIATED. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" vnfInstance: description: > Information on constituent VNF(s) of the NS instance. type: array items: - $ref: "#/definitions/VnfInstance" + $ref: "#/definitions/VnfInstance" pnfInfo: description: > Information on the PNF(s) that are part of the NS instance. type: array items: - $ref: "#/definitions/PnfInfo" + $ref: "#/definitions/PnfInfo" virtualLinkInfo: description: > Information on the VL(s) of the NS instance. @@ -82,25 +82,25 @@ definitions: specified connectivity. type: array items: - $ref: "#/definitions/NsVirtualLinkInfo" + $ref: "#/definitions/NsVirtualLinkInfo" vnffgInfo: description: > Information on the VNFFG(s) of the NS instance. type: array items: - $ref: "#/definitions/VnffgInfo" + $ref: "#/definitions/VnffgInfo" sapInfo: description: > Information on the SAP(s) of the NS instance. type: array - items: + items: $ref: "#/definitions/SapInfo" nestedNsInstanceId: description: > Identifier of the nested NS(s) of the NS instance. type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" nsState: description: > The state of the NS instance. @@ -109,9 +109,9 @@ definitions: terminated or not instantiated. INSTANTIATED: The NS instance is instantiated. type: string - enum: + enum: - NOT_INSTANTIATED - - INSTANTIATED + - INSTANTIATED nsScaleStatus: description: > Status of each NS scaling aspect declared in the @@ -121,14 +121,14 @@ definitions: value is INSTANTIATED. type: array items: - $ref: "#/definitions/NsScaleInfo" + $ref: "#/definitions/NsScaleInfo" additionalAffinityOrAntiAffinityRule: description: > Information on the additional affinity or anti-affinity rule from NS instantiation operation. Shall not conflict with rules already specified in the NSD. type: array - items: + items: $ref: "#/definitions/AffinityOrAntiAffinityRule" _links: type: object @@ -145,7 +145,7 @@ definitions: Links to resources related to this notification. type: array items: - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "SOL005_def.yaml#/definitions/Link" instantiate: description: > Link to the "instantiate" task resource, if the related @@ -183,7 +183,7 @@ definitions: instance resource (i.e. NS instance is in INSTANTIATED state). $ref: "SOL005_def.yaml#/definitions/Link" - + VnfInstance: description: > This type represents a VNF instance. @@ -234,11 +234,11 @@ definitions: $ref: "#/definitions/Version" vnfPkgId: description: > - Identifier of information held by the NFVO about - the specific VNF package on which the VNF is - based. This identifier was allocated by the NFVO. - This attribute can be modified with the PATCH - method. + Identifier of information held by the NFVO about + the specific VNF package on which the VNF is + based. This identifier was allocated by the NFVO. + This attribute can be modified with the PATCH + method. $ref: "SOL005_def.yaml#/definitions/Identifier" vnfConfigurableProperties: description: > @@ -331,7 +331,7 @@ definitions: Identifier of the "extLinkPortInfo" structure inside the the "extVirtualLinkInfo" structure. Shall be present if the CP is associated to a link port. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" extVirtualLinkInfo: description: > @@ -361,8 +361,8 @@ definitions: type: string vnfcResourceInfo: description: > - Information about the virtualised compute and storage resources used - by the VNFCs of the VNF instance. + Information about the virtualised compute and storage resources used + by the VNFCs of the VNF instance. type: array items: $ref: "#/definitions/VnfcResourceInfo" @@ -392,14 +392,14 @@ definitions: Extensions that are writeable are declared in the VNFD. This attribute can be modified with the PATCH method. $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - + LccnLinks: description: > This type represents the links to resources that a notification can contain. type: object - required: + required: - nsInstance - properties: + properties: nsInstance: description: > Link to the resource representing the NS instance to @@ -415,18 +415,18 @@ definitions: notification is related to. Shall be present if there is a related lifecycle operation occurrence $ref: "SOL005_def.yaml#/definitions/Link" - + Version: description: > A Version. type: string - + VnfOperationalStateType: type: string enum: - STARTED - STOPPED - + VnfScaleInfo: required: - aspectId @@ -481,7 +481,7 @@ definitions: description: > Information on the external CP of the PNF. $ref: "#/definitions/PnfExtCpInfo" - + PnfExtCpInfo: description: > This type represents the information about the external CP of the PNF. @@ -505,9 +505,9 @@ definitions: description: > Parameters for configuring the network protocols on the CP. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/CpProtocolData" - + NsVirtualLinkInfo: description: > This type specifies the information about an NS VL instance. @@ -531,7 +531,7 @@ definitions: Identifier(s) of the virtualised network resource(s) realizing the VL instance. See note. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/ResourceHandle" linkPort: description: > @@ -539,7 +539,7 @@ definitions: Cardinality of zero indicates that no port has yet been created for the VL instance. type: array - items: + items: $ref: "#/definitions/NsLinkPortInfo" VnffgInfo: @@ -564,21 +564,21 @@ definitions: description: > Identifier(s) of the constituent VNF instance(s) of this VNFFG instance. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" pnfdInfoId: description: > Identifier(s) of the constituent PNF instance(s) of this VNFFG instance. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" nsVirtualLinkInfoId: description: > Identifier(s) of the constituent VL instance(s) of this VNFFG instance. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" nsCpHandle: description: > @@ -586,7 +586,7 @@ definitions: constituent VNFs and PNFs or the SAP instances of the VNFFG. See note. type: array - items: + items: $ref: "#/definitions/NsCpHandle" NsCpHandle: @@ -594,7 +594,7 @@ definitions: This type represents an identifier of the CP or SAP instance. It shall comply with the provisions defined in Table 6.5.3.56-1. - type: object + type: object properties: vnfInstanceId: description: > @@ -631,7 +631,7 @@ definitions: instance. This attribute shall be present if the CP instance is NS SAP. See notes 3 and 4. $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" - + SapInfo: description: > This type represents an SAP instance. It shall comply with the provisions defined in Table 6.5.3.67-1. @@ -662,9 +662,9 @@ definitions: description: > Network protocol information for this SAP. type: array - items: + items: $ref: "#/definitions/CpProtocolInfo" - + CpProtocolInfo: description: > This type describes the protocol layer(s) that a CP or SAP uses together with protocol-related information, like @@ -691,135 +691,135 @@ definitions: $ref: "#/definitions/IpOverEthernetAddressInfo" IpOverEthernetAddressInfo: - description: > - This type represents information about a network address that has been assigned. - It shall comply with the provisions defined in Table 6.5.3.18-1. - type: object - required: - - macAddress - - ipAddresses - - subnetId - - addresses - - addressRange - properties: - macAddress: - description: > - Assigned MAC address. - $ref: "SOL005_def.yaml#/definitions/MacAddress" - ipAddresses: - description: > - Addresses assigned to the CP instance. Each entry represents IP - addresses assigned by fixed or dynamic IP address assignment per - subnet. - type: array - items: - type: object - required: - - type - properties: - type: - description: > - The type of the IP addresses. - Permitted values: IPV4, IPV6. - type: string - enum: - - IPV4 - - IPV6 - addresses: - description: > - Fixed addresses assigned (from the subnet defined by - "subnetId" if provided). - type: array - items: - $ref: "SOL005_def.yaml#/definitions/IpAddress" - isDynamic: - description: > - Indicates whether this set of addresses was assigned - dynamically (true) or based on address information provided as - input from the API consumer (false). Shall be present if - "addresses" is present and shall be absent otherwise. - type: boolean - addressRange: - description: > - An IP address range used, e.g., in case of egress connections. - Exactly one of "addresses" or "addressRange" shall be present. - type: object - required: - - minAddress - - maxAddress - properties: - minAddress: - description: > - Lowest IP address belonging to the range. - $ref: "SOL005_def.yaml#/definitions/IpAddress" - maxAddress: - description: > - Highest IP address belonging to the range - $ref: "SOL005_def.yaml#/definitions/IpAddress" - subnetId: - description: > - Subnet defined by the identifier of the subnet resource in - the VIM. - In case this attribute is present, IP addresses are bound - to that subnet. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVim" - - - type: - description: > - The type of the IP addresses - type: string - enum: - - PV4 - - PV6 - addresses: - description: > - Fixed addresses assigned (from the subnet - defined by "subnetId" if provided). See note. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/IpAddress" - isDynamic: - description: > - Indicates whether this set of addresses was - assigned dynamically (true) or based on address - information provided as input from the API - consumer (false). Shall be present if "addresses" - is present and shall be absent otherwise. - type: boolean - addressRange: - description: > - An IP address range used, e.g. in case of egress - connections. See note. - type: object - required: - - minAddress - - maxAddress - properties: - minAddress: - description: > - Lowest IP address belonging to the range. - $ref: "SOL005_def.yaml#/definitions/IpAddress" - maxAddress: - description: > - Highest IP address belonging to the range - $ref: "SOL005_def.yaml#/definitions/IpAddress" - minAddress: - description: > - Lowest IP address belonging to the range - $ref: "SOL005_def.yaml#/definitions/IpAddress" - maxAddress: - description: > - Highest IP address belonging to the range. - $ref: "SOL005_def.yaml#/definitions/IpAddress" - subnetId: - description: > - Subnet defined by the identifier of the subnet - resource in the VIM. - In case this attribute is present, IP addresses - are bound to that subnet. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVim" - + description: > + This type represents information about a network address that has been assigned. + It shall comply with the provisions defined in Table 6.5.3.18-1. + type: object + required: + - macAddress + - ipAddresses + - subnetId + - addresses + - addressRange + properties: + macAddress: + description: > + Assigned MAC address. + $ref: "SOL005_def.yaml#/definitions/MacAddress" + ipAddresses: + description: > + Addresses assigned to the CP instance. Each entry represents IP + addresses assigned by fixed or dynamic IP address assignment per + subnet. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. + Permitted values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the subnet defined by + "subnetId" if provided). + type: array + items: + $ref: "SOL005_def.yaml#/definitions/IpAddress" + isDynamic: + description: > + Indicates whether this set of addresses was assigned + dynamically (true) or based on address information provided as + input from the API consumer (false). Shall be present if + "addresses" is present and shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g., in case of egress connections. + Exactly one of "addresses" or "addressRange" shall be present. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + Lowest IP address belonging to the range. + $ref: "SOL005_def.yaml#/definitions/IpAddress" + maxAddress: + description: > + Highest IP address belonging to the range + $ref: "SOL005_def.yaml#/definitions/IpAddress" + subnetId: + description: > + Subnet defined by the identifier of the subnet resource in + the VIM. + In case this attribute is present, IP addresses are bound + to that subnet. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVim" + + + type: + description: > + The type of the IP addresses + type: string + enum: + - PV4 + - PV6 + addresses: + description: > + Fixed addresses assigned (from the subnet + defined by "subnetId" if provided). See note. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/IpAddress" + isDynamic: + description: > + Indicates whether this set of addresses was + assigned dynamically (true) or based on address + information provided as input from the API + consumer (false). Shall be present if "addresses" + is present and shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g. in case of egress + connections. See note. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + Lowest IP address belonging to the range. + $ref: "SOL005_def.yaml#/definitions/IpAddress" + maxAddress: + description: > + Highest IP address belonging to the range + $ref: "SOL005_def.yaml#/definitions/IpAddress" + minAddress: + description: > + Lowest IP address belonging to the range + $ref: "SOL005_def.yaml#/definitions/IpAddress" + maxAddress: + description: > + Highest IP address belonging to the range. + $ref: "SOL005_def.yaml#/definitions/IpAddress" + subnetId: + description: > + Subnet defined by the identifier of the subnet + resource in the VIM. + In case this attribute is present, IP addresses + are bound to that subnet. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVim" + ExtVirtualLinkInfo: type: object required: @@ -827,12 +827,12 @@ definitions: - resourceHandle properties: id: - description: > - Identifier of the external VL and the related external VL - information instance. - The identifier is assigned by the NFV-MANO entity that manages this - VL instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" + description: > + Identifier of the external VL and the related external VL + information instance. + The identifier is assigned by the NFV-MANO entity that manages this + VL instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" resourceHandle: description: > Reference to the resource realizing this VL. @@ -1039,183 +1039,183 @@ definitions: $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" VnfVirtualLinkResourceInfo: - description: > - This type represents the information that allows addressing a virtualised - resource that is used by an internal VL instance in a VNF instance. - type: object - required: - - id - - vnfVirtualLinkDescId - - networkResource - properties: - id: - description: > - Identifier of this VnfVirtualLinkResourceInfo instance. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf" - vnfVirtualLinkDescId: - description: > - Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" - networkResource: - description: > - Reference to the VirtualNetwork resource. - $ref: "SOL005_def.yaml#/definitions/ResourceHandle" - reservationId: - description: > - The reservation identifier applicable to the resource. It shall be - present when an applicable reservation exists. - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfLinkPorts: - description: > - Links ports of this VL. - Shall be present when the linkPort is used for external connectivity - by the VNF (refer to VnfLinkPortInfo). - May be present otherwise. - type: array - items: - $ref: "#/definitions/VnfLinkPortInfo" - metadata: - description: > - Metadata about this resource. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - + description: > + This type represents the information that allows addressing a virtualised + resource that is used by an internal VL instance in a VNF instance. + type: object + required: + - id + - vnfVirtualLinkDescId + - networkResource + properties: + id: + description: > + Identifier of this VnfVirtualLinkResourceInfo instance. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf" + vnfVirtualLinkDescId: + description: > + Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" + networkResource: + description: > + Reference to the VirtualNetwork resource. + $ref: "SOL005_def.yaml#/definitions/ResourceHandle" + reservationId: + description: > + The reservation identifier applicable to the resource. It shall be + present when an applicable reservation exists. + $ref: "SOL005_def.yaml#/definitions/Identifier" + vnfLinkPorts: + description: > + Links ports of this VL. + Shall be present when the linkPort is used for external connectivity + by the VNF (refer to VnfLinkPortInfo). + May be present otherwise. + type: array + items: + $ref: "#/definitions/VnfLinkPortInfo" + metadata: + description: > + Metadata about this resource. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + VirtualStorageResourceInfo: - description: > - This type represents the information that allows addressing a virtualised - resource that is used by a VNF instance. - type: object - required: - - id - - virtualStorageDescId - - storageResource - properties: - id: - description: > - Identifier of this VirtualStorageResourceInfo instance. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf" - virtualStorageDescId: - description: > - Identifier of the VirtualStorageDesc in the VNFD. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" - storageResource: - description: > - Reference to the VirtualStorage resource. - $ref: "SOL005_def.yaml#/definitions/ResourceHandle" - reservationId: - description: > - The reservation identifier applicable to the resource. It shall be - present when an applicable reservation exists. - $ref: "SOL005_def.yaml#/definitions/Identifier" - metadata: - description: > - Metadata about this resource. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - + description: > + This type represents the information that allows addressing a virtualised + resource that is used by a VNF instance. + type: object + required: + - id + - virtualStorageDescId + - storageResource + properties: + id: + description: > + Identifier of this VirtualStorageResourceInfo instance. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf" + virtualStorageDescId: + description: > + Identifier of the VirtualStorageDesc in the VNFD. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" + storageResource: + description: > + Reference to the VirtualStorage resource. + $ref: "SOL005_def.yaml#/definitions/ResourceHandle" + reservationId: + description: > + The reservation identifier applicable to the resource. It shall be + present when an applicable reservation exists. + $ref: "SOL005_def.yaml#/definitions/Identifier" + metadata: + description: > + Metadata about this resource. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + NsLinkPortInfo: - description: > - This type represents information about a link port of a VL instance. - It shall comply with the provisions defined in Table 6.5.3.55-1. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - Identifier of this link port as provided by the entity that - has created the link port. - $ref: "SOL005_def.yaml#/definitions/Identifier" - resourceHandle: - description: > - Identifier of the virtualised network resource realizing - this link port. - $ref: "SOL005_def.yaml#/definitions/ResourceHandle" - nsCpHandle: - description: > - Identifier of the CP/SAP instance to be connected to this - link port. The value refers to a vnfExtCpInfo item in the - VnfInstance, or a pnfExtCpInfo item in the PnfInfo, or a - sapInfo item in the NS instance. - There shall be at most one link port associated with any - connection point instance. - type: array - items: - $ref: "#/definitions/NsCpHandle" - + description: > + This type represents information about a link port of a VL instance. + It shall comply with the provisions defined in Table 6.5.3.55-1. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + Identifier of this link port as provided by the entity that + has created the link port. + $ref: "SOL005_def.yaml#/definitions/Identifier" + resourceHandle: + description: > + Identifier of the virtualised network resource realizing + this link port. + $ref: "SOL005_def.yaml#/definitions/ResourceHandle" + nsCpHandle: + description: > + Identifier of the CP/SAP instance to be connected to this + link port. The value refers to a vnfExtCpInfo item in the + VnfInstance, or a pnfExtCpInfo item in the PnfInfo, or a + sapInfo item in the NS instance. + There shall be at most one link port associated with any + connection point instance. + type: array + items: + $ref: "#/definitions/NsCpHandle" + AffinityOrAntiAffinityRule: - description: > - This type describes the additional affinity or anti-affinity rule - applicable between the VNF instances to be instantiated - in the NS instantiation operation request or between the VNF instances - to be instantiated in the NS instantiation - operation request and the existing VNF instances.. - type: object - required: - - affinityOrAntiAffiinty - - scope - properties: - vnfdId: - description: > - Reference to a VNFD. - When the VNFD which is not used to instantiate VNF, it - presents all VNF instances of this type as the subjects - of the affinity or anti-affinity rule. The VNF instance - which the VNFD presents is not necessary as a part of - the NS to be instantiated. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfProfileId: - description: > - Reference to a vnfProfile defined in the NSD. - At least one VnfProfile which is used to instantiate VNF - for the NS to be instantiated as the subject of the affinity - or anti-affinity rule shall be present. When the VnfProfile - which is not used to instantiate VNF, it presents all VNF - instances of this type as the subjects of the affinity or - anti-affinity rule. The VNF instance which the VnfProfile - presents is not necessary as a part of the NS to be instantiated. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - vnfInstanceId: - description: > - Reference to the existing VNF instance as the subject of - the affinity or anti-affinity rule. The existing VNF instance - is not necessary as a part of the NS to be instantiated. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - affinityOrAntiAffiinty: - description: > - The type of the constraint. - Permitted values: - AFFINITY - ANTI_AFFINITY. - type: string - enum: - - AFFINITY - - ANTI_AFFINITY - scope: - description: > - Specifies the scope of the rule where the placement - constraint applies. - Permitted values: - NFVI_POP - ZONE - ZONE_GROUP - NFVI_NODE. - type: string - enum: - - NFVI_POP - - ZONE - - ZONE_GROUP - - NFVI_NODE + description: > + This type describes the additional affinity or anti-affinity rule + applicable between the VNF instances to be instantiated + in the NS instantiation operation request or between the VNF instances + to be instantiated in the NS instantiation + operation request and the existing VNF instances.. + type: object + required: + - affinityOrAntiAffiinty + - scope + properties: + vnfdId: + description: > + Reference to a VNFD. + When the VNFD which is not used to instantiate VNF, it + presents all VNF instances of this type as the subjects + of the affinity or anti-affinity rule. The VNF instance + which the VNFD presents is not necessary as a part of + the NS to be instantiated. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + vnfProfileId: + description: > + Reference to a vnfProfile defined in the NSD. + At least one VnfProfile which is used to instantiate VNF + for the NS to be instantiated as the subject of the affinity + or anti-affinity rule shall be present. When the VnfProfile + which is not used to instantiate VNF, it presents all VNF + instances of this type as the subjects of the affinity or + anti-affinity rule. The VNF instance which the VnfProfile + presents is not necessary as a part of the NS to be instantiated. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + vnfInstanceId: + description: > + Reference to the existing VNF instance as the subject of + the affinity or anti-affinity rule. The existing VNF instance + is not necessary as a part of the NS to be instantiated. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + affinityOrAntiAffiinty: + description: > + The type of the constraint. + Permitted values: + AFFINITY + ANTI_AFFINITY. + type: string + enum: + - AFFINITY + - ANTI_AFFINITY + scope: + description: > + Specifies the scope of the rule where the placement + constraint applies. + Permitted values: + NFVI_POP + ZONE + ZONE_GROUP + NFVI_NODE. + type: string + enum: + - NFVI_POP + - ZONE + - ZONE_GROUP + - NFVI_NODE InstantiateNsRequest: type: object required: - - nsFlavourId + - nsFlavourId properties: nsFlavourId: description: > @@ -1223,30 +1223,30 @@ definitions: $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" sapData: description: > - Create data concerning the SAPs of this NS. + Create data concerning the SAPs of this NS. type: array - items: - $ref: "#/definitions/SapData" + items: + $ref: "#/definitions/SapData" addpnfData: description: > Information on the PNF(s) that are part of this NS. type: array - items: - $ref: "#/definitions/AddPnfData" + items: + $ref: "#/definitions/AddPnfData" vnfInstanceData: description: > Specify an existing VNF instance to be used in the NS. If needed, the VNF Profile to be used for this VNF instance is also provided. type: array - items: + items: $ref: "#/definitions/VnfInstanceData" nestedNsInstanceId: description: > Specify an existing NS instance to be used as a nested NS within the NS. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" localizationLanguage: description: > @@ -1255,8 +1255,8 @@ definitions: An example can be a constraint for the VNF to be in a specific geographic location.. type: array - items: - $ref: "#/definitions/VnfLocationConstraint" + items: + $ref: "#/definitions/VnfLocationConstraint" additionalParamsForNs: description: > Allows the OSS/BSS to provide additional parameter(s) @@ -1272,8 +1272,8 @@ definitions: instantiation and not for existing VNF that are referenced for reuse.. type: array - items: - $ref: "#/definitions/ParamsForVnf" + items: + $ref: "#/definitions/ParamsForVnf" startTime: description: > Timestamp indicating the earliest time to instantiate the NS. @@ -1285,195 +1285,195 @@ definitions: the DF applicable to this NS instance. If not present, the default NS instantiation level as declared in the NSD shall be used. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" additionalAffinityOrAntiAffiniityRule: description: > - Specifies additional affinity or anti-affinity constraint for - the VNF instances to be instantiated as part of the NS - instantiation. - Shall not conflict with rules already specified in the NSD. + Specifies additional affinity or anti-affinity constraint for + the VNF instances to be instantiated as part of the NS + instantiation. + Shall not conflict with rules already specified in the NSD. type: array - items: + items: $ref: "#/definitions/AffinityOrAntiAffinityRule" ParamsForVnf: - description: > - This type defines the additional parameters for the VNF instance - to be created associated with an NS instance. - It shall comply with the provisions defined in Table 6.5.3.22-1. - type: object - required: - - vnfProfileId - properties: - vnfProfileId: - description: > - Identifier of (reference to) a vnfProfile to which the - additional parameters apply. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - additionalParams: - description: > - Additional parameters that are applied for the VNF - instance to be created. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - + description: > + This type defines the additional parameters for the VNF instance + to be created associated with an NS instance. + It shall comply with the provisions defined in Table 6.5.3.22-1. + type: object + required: + - vnfProfileId + properties: + vnfProfileId: + description: > + Identifier of (reference to) a vnfProfile to which the + additional parameters apply. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + additionalParams: + description: > + Additional parameters that are applied for the VNF + instance to be created. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + LocationConstraints: - description: > - This type represents location constraints for a VNF to be instantiated. - The location constraints shall be presented as a - country code, optionally followed by a civic address based on - the format defined by IETF RFC 4776 [13]. - type: object - required: - - countryCode - properties: - countryCode: - description: > - The two-letter ISO 3166 [29] country code in capital letters. - type: string - civicAddressElement: - description: > - Zero or more elements comprising the civic address. - type: array - items: - type: object - required: - - caType - - caValue - properties: - caType: - description: > - Describe the content type of caValue. The value of - caType shall comply with Section 3.4 of IETF - RFC 4776 [13]. - type: integer - caValue: - description: > - Content of civic address element corresponding to the - caType. The format caValue shall comply with - Section 3.4 of IETF RFC 4776 [13]. - type: string - + description: > + This type represents location constraints for a VNF to be instantiated. + The location constraints shall be presented as a + country code, optionally followed by a civic address based on + the format defined by IETF RFC 4776 [13]. + type: object + required: + - countryCode + properties: + countryCode: + description: > + The two-letter ISO 3166 [29] country code in capital letters. + type: string + civicAddressElement: + description: > + Zero or more elements comprising the civic address. + type: array + items: + type: object + required: + - caType + - caValue + properties: + caType: + description: > + Describe the content type of caValue. The value of + caType shall comply with Section 3.4 of IETF + RFC 4776 [13]. + type: integer + caValue: + description: > + Content of civic address element corresponding to the + caType. The format caValue shall comply with + Section 3.4 of IETF RFC 4776 [13]. + type: string + VnfLocationConstraint: - description: > - This type represents the association of location constraints to a VNF instance - to be created according to a specific VNF profile. - It shall comply with the provisions defined in Table 6.5.3.20-1. - type: object - required: - - vnfProfileId - properties: - vnfProfileId: - description: > - Identifier of (reference to) a vnfProfile to which the - additional parameters apply. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - locationConstraints: - description: > - Defines the location constraints for the VNF instance to - be created based on the VNF profile. - $ref: "#/definitions/LocationConstraints" + description: > + This type represents the association of location constraints to a VNF instance + to be created according to a specific VNF profile. + It shall comply with the provisions defined in Table 6.5.3.20-1. + type: object + required: + - vnfProfileId + properties: + vnfProfileId: + description: > + Identifier of (reference to) a vnfProfile to which the + additional parameters apply. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + locationConstraints: + description: > + Defines the location constraints for the VNF instance to + be created based on the VNF profile. + $ref: "#/definitions/LocationConstraints" VnfInstanceData: - description: > - This type specifies an existing VNF instance to be used in the NS instance and - if needed, the VNF Profile to use for this VNF instance. - It shall comply with the provisions defined in Table 6.5.3.19-1. - type: object - required: - - vnfInstanceId - - vnfProfileId - properties: - vnfInstanceId: - description: > - Identifier of the existing VNF instance to be used in the NS. - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfProfileId: - description: > - Identifier of (Reference to) a vnfProfile defined in the - NSD which the existing VNF instance shall be matched - with. If not present, the NFVO will select the VnfProfile - matching the information in the VNF instance. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - + description: > + This type specifies an existing VNF instance to be used in the NS instance and + if needed, the VNF Profile to use for this VNF instance. + It shall comply with the provisions defined in Table 6.5.3.19-1. + type: object + required: + - vnfInstanceId + - vnfProfileId + properties: + vnfInstanceId: + description: > + Identifier of the existing VNF instance to be used in the NS. + $ref: "SOL005_def.yaml#/definitions/Identifier" + vnfProfileId: + description: > + Identifier of (Reference to) a vnfProfile defined in the + NSD which the existing VNF instance shall be matched + with. If not present, the NFVO will select the VnfProfile + matching the information in the VNF instance. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + SapData: - description: > - This type represents the information related to a SAP of a NS. - It shall comply with the provisions defined in Table 6.5.3.10-1. - type: object - required: - - sapdId - - sapName - - description - properties: - sapdId: - description: > - Reference to the SAPD for this SAP. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - sapName: - description: > - Human readable name for the SAP. - type: string - description: - description: > - Human readable description for the SAP. - type: string - sapProtocolData: + description: > + This type represents the information related to a SAP of a NS. + It shall comply with the provisions defined in Table 6.5.3.10-1. + type: object + required: + - sapdId + - sapName + - description + properties: + sapdId: + description: > + Reference to the SAPD for this SAP. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + sapName: + description: > + Human readable name for the SAP. + type: string + description: + description: > + Human readable description for the SAP. + type: string + sapProtocolData: description: > Parameters for configuring the network protocols on the SAP. type: array - items: - $ref: "SOL005_def.yaml#/definitions/CpProtocolData" + items: + $ref: "SOL005_def.yaml#/definitions/CpProtocolData" ScaleNsRequest: - description: > - This type represents a request for the scale NS operation. - type: object - required: - - scaleType - properties: - scaleType: - description: > - Indicates the type of scaling to be performed. - Possible values: - - SCALE_NS - - SCALE_VNF - type: string - enum: - - SCALE_NS - - SCALE_VNF - scaleNsData: - description: > - The necessary information to scale the referenced NS instance. - It shall be present when scaleType = SCALE_NS. - $ref: "#/definitions/ScaleNsData" - scaleVnfData: - description: > - The necessary information to scale the referenced NS instance. - It shall be present when scaleType = SCALE_VNF. - type: array - items: - $ref: "#/definitions/ScaleVnfData" - scaleTime: - description: > - Timestamp indicating the scale time of the NS, i.e. the - NS will be scaled at this timestamp. Cardinality "0" - indicates the NS scaling takes place immediately". - $ref: "SOL005_def.yaml#/definitions/DateTime" - - UpdateNsRequest: description: > - This operation supports the update of a NS instance, - It shall comply with the provisions defined in Table 6.5.2.12-1. + This type represents a request for the scale NS operation. type: object required: - - updateType + - scaleType properties: - updateType: + scaleType: description: > - The type of update. It determines also which one of the - following parameters is present in the operation. - Possible values include: - * ADD_VNF: Adding existing VNF instance(s) + Indicates the type of scaling to be performed. + Possible values: + - SCALE_NS + - SCALE_VNF + type: string + enum: + - SCALE_NS + - SCALE_VNF + scaleNsData: + description: > + The necessary information to scale the referenced NS instance. + It shall be present when scaleType = SCALE_NS. + $ref: "#/definitions/ScaleNsData" + scaleVnfData: + description: > + The necessary information to scale the referenced NS instance. + It shall be present when scaleType = SCALE_VNF. + type: array + items: + $ref: "#/definitions/ScaleVnfData" + scaleTime: + description: > + Timestamp indicating the scale time of the NS, i.e. the + NS will be scaled at this timestamp. Cardinality "0" + indicates the NS scaling takes place immediately". + $ref: "SOL005_def.yaml#/definitions/DateTime" + + UpdateNsRequest: + description: > + This operation supports the update of a NS instance, + It shall comply with the provisions defined in Table 6.5.2.12-1. + type: object + required: + - updateType + properties: + updateType: + description: > + The type of update. It determines also which one of the + following parameters is present in the operation. + Possible values include: + * ADD_VNF: Adding existing VNF instance(s) * REMOVE_VNF: Removing VNF instance(s) * INSTANTIATE_VNF: Instantiating new VNF(s) * CHANGE_VNF_DF: Changing VNF DF @@ -1502,7 +1502,7 @@ definitions: * MODIFY_PNF: Modifying PNF * REMOVE_PNF: Removing PNF type: string - enum: + enum: - ADD_VNF - REMOVE_VNF - INSTANTIATE_VNF @@ -1516,18 +1516,18 @@ definitions: - ASSOC_NEW_NSD_VERSION - MOVE_VNF - ADD_VNFFG - - REMOVE_VNFFG - - UPDATE_VNFFG - - CHANGE_NS_DF - - ADD_PNF - - MODIFY_PNF - - REMOVE_PNF + - REMOVE_VNFFG + - UPDATE_VNFFG + - CHANGE_NS_DF + - ADD_PNF + - MODIFY_PNF + - REMOVE_PNF addVnfIstance: description: > Identifies an existing VNF instance to be added to the NS instance. It shall be present only if updateType = "ADD_VNF". type: array - items: + items: $ref: "#/definitions/VnfInstanceData" removeVnfInstanceId: description: > @@ -1539,37 +1539,37 @@ definitions: which this VNF instance was a part, the VNF instance is terminated by the NFVO. type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" instantiateVnfData: description: > Identifies the new VNF to be instantiated. It can be used e.g. for the bottom-up NS creation. It shall be present only if updateType = "INSTANTIATE_VNF". type: array - items: - $ref: "#/definitions/InstantiateVnfData" + items: + $ref: "#/definitions/InstantiateVnfData" changeVnfFlavourData: description: > Identifies the new DF of the VNF instance to be changed to. It shall be present only if updateType = "CHANGE_VNF_DF". type: array - items: - $ref: "#/definitions/ChangeVnfFlavourData" + items: + $ref: "#/definitions/ChangeVnfFlavourData" operateVnfData: description: > Identifies the state of the VNF instance to be changed. It shall be present only if updateType = "OPERATE_VNF". type: array - items: - $ref: "#/definitions/OperateVnfData" + items: + $ref: "#/definitions/OperateVnfData" modifyVnfInfoData: description: > Identifies the VNF information parameters and/or the configurable properties of VNF instance to be modified. It shall be present only if updateType = "MODIFY_VNF_INFORMATION". type: array - items: + items: $ref: "#/definitions/ModifyVnfInfoData" changeExtVnfConnectivityData: description: > @@ -1577,21 +1577,21 @@ definitions: instance to be changed. It shall be present only if updateType = "CHANGE_EXTERNAL_VNF_CONNECTIVITY". type: array - items: - $ref: "#/definitions/ChangeExtVnfConnectivityData" + items: + $ref: "#/definitions/ChangeExtVnfConnectivityData" addSap: description: > Identifies a new SAP to be added to the NS instance. It shall be present only if updateType = "ADD_SAP." type: array - items: - $ref: "#/definitions/SapData" + items: + $ref: "#/definitions/SapData" removeSapId: description: > The identifier an existing SAP to be removed from the NS instance. It shall be present only if updateType = "REMOVE_SAP." type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" addNestedNsId: description: > @@ -1599,16 +1599,16 @@ definitions: added to (nested within) the NS instance. It shall be present only if updateType = "ADD_NESTED_NS". type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" removeNestedNsId: - description: > - The identifier of an existing nested NS instance to be - removed from the NS instance. It shall be present only if - updateType = "REMOVE_NESTED_NS". - type: array - items: - $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" + description: > + The identifier of an existing nested NS instance to be + removed from the NS instance. It shall be present only if + updateType = "REMOVE_NESTED_NS". + type: array + items: + $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" assocNewNsdVersionData: description: > Specify the new NSD to be used for the NS instance. It @@ -1621,23 +1621,23 @@ definitions: instance to another NS instance. It shall be present only if updateType = MOVE_VNF". type: array - items: - $ref: "#/definitions/MoveVnfInstanceData" + items: + $ref: "#/definitions/MoveVnfInstanceData" addVnffg: description: > Specify the new VNFFG to be created to the NS Instance. It shall be present only if updateType = "ADD_VNFFG". type: array - items: - $ref: "#/definitions/AddVnffgData" + items: + $ref: "#/definitions/AddVnffgData" removeVnffgId: description: > Identifier of an existing VNFFG to be removed from the NS Instance. It shall be present only if updateType = "REMOVE_VNFFG". type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" updateVnffg: description: > @@ -1645,41 +1645,41 @@ definitions: for a VNFFG of the NS Instance. It shall be present only if updateType = "UPDATE_VNFFG". type: array - items: - $ref: "#/definitions/UpdateVnffgData" + items: + $ref: "#/definitions/UpdateVnffgData" changeNsFlavourData: description: > Specifies the new DF to be applied to the NS instance. It shall be present only if updateType = "CHANGE_NS_DF". - $ref: "#/definitions/ChangeNsFlavourData" + $ref: "#/definitions/ChangeNsFlavourData" addPnfData: description: > specifies the PNF to be added into the NS instance. It shall be present only if updateType = "ADD_PNF". type: array - items: - $ref: "#/definitions/AddPnfData" + items: + $ref: "#/definitions/AddPnfData" modifyPnfData: description: > Specifies the PNF to be modified in the NS instance. It shall be present only if updateType = "MODIFY_PNF". type: array - items: - $ref: "#/definitions/ModifyPnfData" + items: + $ref: "#/definitions/ModifyPnfData" removePnfId: description: > Identifier of the PNF to be deleted from the NS instance. It shall be present only if updateType = "REMOVE_PNF". type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" updateTime: description: > Timestamp indicating the update time of the NS, i.e. the NS will be updated at this timestamp. Cardinality "0" indicates the NS update takes place immediately. - $ref: "SOL005_def.yaml#/definitions/DateTime" + $ref: "SOL005_def.yaml#/definitions/DateTime" InstantiateVnfData: description: > This type represents the information related to a SAP of a NS. The InstantiateVnfData data type specifies the @@ -1690,7 +1690,7 @@ definitions: type: object required: - vnfdId - - vnfFlavourId + - vnfFlavourId properties: vnfdId: description: > @@ -1707,7 +1707,7 @@ definitions: flavor to be instantiated. If not present, the default instantiation level as declared in the VNFD is instantiated. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" vnfInstanceName: description: > Human-readable name of the VNF instance to be created. @@ -1720,627 +1720,627 @@ definitions: description: > Information about external VLs to connect the VNF to. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/ExtVirtualLinkData" extManagedVirtualLinks: description: > Information about internal VLs that are managed by other entities than the VNFM. type: array - items: - $ref: "SOL005_def.yaml#/definitions/ExtManagedVirtualLinkData" + items: + $ref: "SOL005_def.yaml#/definitions/ExtManagedVirtualLinkData" localizationLanguage: description: > - Localization language of the VNF to be instantiated. - The value shall comply with the format defined in IETF RFC 5646 [16]. + Localization language of the VNF to be instantiated. + The value shall comply with the format defined in IETF RFC 5646 [16]. + type: string + additionalParams: + description: > + Additional input parameters for the instantiation process, + specific to the VNF being instantiated. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + + ChangeVnfFlavourData: + description: > + The type represents the information that is requested to be changed + deployment flavor for an existing VNF instance. + It shall comply with the provisions defined in Table 6.5.3.25-1. + type: object + required: + - vnfInstanceId + - newFlavourId + properties: + vnfInstanceId: + description: > + Identifier of the VNF instance to be modified. + $ref: "SOL005_def.yaml#/definitions/Identifier" + newFlavourId: + description: > + Identifier of the VNF deployment flavor to be instantiated. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" + instantiationLevelId: + description: > + Identifier of the instantiation level of the deployment + flavor to be instantiated. If not present, the default + instantiation level as declared in the VNFD is + instantiated. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" + extVirtualLinks: + description: > + Information about external VLs to connect the VNF to. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/ExtVirtualLinkData" + extManagedVirtualLinks: + description: > + information about internal VLs that are managed by NFVO. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/ExtManagedVirtualLinkData" + additionalParams: + description: > + Additional input parameters for the flavor change + process, specific to the VNF being modified, as declared + in the VNFD as part of "ChangeVnfFlavourOpConfig". + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + + OperateVnfData: + description: > + This type represents a VNF instance for which the operational state + needs to be changed and the requested new state. It + shall comply with the provisions defined in Table 6.5.3.31-1. + type: object + required: + - vnfInstanceId + - changeStateTo + properties: + vnfInstanceId: + description: > + Identifier of the VNF instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" + changeStateTo: + description: > + The desired operational state (i.e. started or stopped) + to change the VNF to. + $ref: "#/definitions/OperationalStates" + stopType: + description: > + It signals whether forceful or graceful stop is requested. + $ref: "#/definitions/StopType" + gracefulStopTimeout: + description: > + The time interval (in seconds) to wait for the VNF to be + taken out of service during graceful stop, before + stopping the VNF. + type: integer + + OperationalStates: + description: > + STARTED - The VNF instance is up and running. + STOPPED - The VNF instance has been shut down. + type: string + enum: + - STARTED + - STOPPED + StopType: + description: > + * FORCEFUL: The VNFM will stop the VNF immediately after accepting the + request. + * GRACEFUL: The VNFM will first arrange to take the VNF out of service + after accepting the request. Once that operation is successful or once + the timer value specified in the "gracefulStopTimeout" attribute + expires, the VNFM will stop the VNF. + type: string + enum: + - FORCEFUL + - GRACEFUL + + ModifyVnfInfoData: + description: > + This type represents the information that is requested to be modified for a VNF instance. The information to be + modified shall comply with the associated NSD. + EXAMPLE. The vnfPkgId attribute value for a particular VNF instance can only be updated with a value that + matches the identifier value of a VNF package whose vnfdId is present in the associated profile of the NSD. + type: object + required: + - vnfInstanceId + properties: + vnfInstanceId: + description: > + Identifier of the VNF instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" + vnfInstanceName: + description: > + New value of the "vnfInstanceName" attribute in + "VnfInstance", or "null" to remove the attribute. + type: string + vnfInstanceDescription: + description: > + New value of the "vnfInstanceDescription" attribute in "VnfInstance", + or "null" to remove the attribute. + type: string + vnfPkgId: + description: > + New value of the "vnfPkgId" attribute in "VnfInstance". + The value "null" is not permitted + $ref: "SOL005_def.yaml#/definitions/Identifier" + vnfConfigurableProperties: + description: > + Modifications to entries in the + "vnfConfigurableProperties" list, as defined below this Table. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + Metadata: + description: > + Modifications to entries in the "metadata" list, as + defined below this Table. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + Extensions: + description: > + Modifications to entries in the "extensions" list, as + defined below this Table. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + + ChangeExtVnfConnectivityData: + description: > + This type describes the information invoked by the NFVO to change the external VNF connectivity information + maintained by the VNFM. The types of changes that this operation supports are: + 1) Disconnect the external CPs that are connected to a particular external VL, and connect them to a different + external VL. + 2) Change the connectivity parameters of the existing external CPs, including changing addresses. + NOTE: Depending on the capabilities of the underlying VIM resources, certain changes (e.g. modifying the IP + address assignment) might not be supported without deleting the resource and creating another one with + the modified configuration. + This type shall comply with the provisions defined in Table 6.5.3.33-1. + type: object + required: + - vnfInstanceId + - extVirtualLink + properties: + vnfInstanceId: + description: > + Identifier of the VNF instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" + extVirtualLink: + description: > + Information about external VLs to change (e.g. connect the VNF to). + type: array + items: + $ref: "SOL005_def.yaml#/definitions/ExtVirtualLinkData" + additionalParams: + description: > + Additional parameters passed by the OSS as input to + the external connectivity change process, specific to the + VNF instance being changed. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + + AssocNewNsdVersionData: + description: > + This type specifies a new NSD version that is associated to the NS instance. After issuing the Update NS operation with + updateType = "AssocNewNsdVersion", the NFVO shall use the referred NSD as a basis for the given NS instance. + Different versions of the same NSD have same nsdInvariantId, but different nsdId attributes, therefore if the + nsdInvariantId of the NSD version that is to be associated to this NS instance is different from the one used before, the + NFVO shall reject the request. Only new versions of the same NSD can be associated to an existing NS instance. This + data type shall comply with the provisions defined in Table 6.5.3.34-1. + type: object + required: + - newNsdId + properties: + newNsdId: + description: > + Identifier of the new NSD version that is to be + associated to the NS instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" + sync: + description: > + Specify whether the NS instance shall be automatically + synchronized to the new NSD by the NFVO (in case of + true value) or the NFVO shall not do any action (in case + of a false value) and wait for further guidance from + OSS/BSS (i.e. waiting for OSS/BSS to issue NS + lifecycle management operation to explicitly add/remove + VNFs and modify information of VNF instances + according to the new NSD). + The synchronization to the new NSD means e.g. + instantiating/adding those VNFs whose VNFD is + referenced by the new NSD version but not referenced + by the old one, terminating/removing those VNFs whose + VNFD is referenced by the old NSD version but not + referenced by the new NSD version, modifying + information of VNF instances to the new applicable + VNFD provided in the new NSD version. + A cardinality of 0 indicates that synchronization shall not be done. + type: boolean + + MoveVnfInstanceData: + description: > + This type specifies existing VNF instances to be moved from one NS instance (source) to another NS instance + (destination). The NS instance defined in the Update NS operation indicates the source NS instance and the destination + NS instance is specified in this data type (referred to targetNsInstanceId). + It shall comply with the provisions defined in Table 6.5.3.35-1. + type: object + required: + - targetNsInstanceId + properties: + targetNsInstanceId: + description: > + Specify the target NS instance where the VNF instances + are moved to. + $ref: "SOL005_def.yaml#/definitions/Identifier" + vnfInstanceId: + description: > + Specify the VNF instance that is moved. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" + + AddVnffgData: + description: > + This type specifies the parameters used for the creation of a new VNFFG instance. + It shall comply with the provisions defined in Table 6.5.3.36-1. + type: object + required: + - vnffgdId + - vnffgName + - description + properties: + targetNsInstanceId: + description: > + Identifier of the VNFFGD used to create this VNFFG + instance. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + vnffgName: + description: > + Human readable name for the VNFFG. + type: string + description: + description: > + Human readable description for the VNFFG. + type: string + + UpdateVnffgData: + description: > + This type specifies the parameters used for the update of an existing VNFFG instance. + It shall comply with the provisions defined in Table 6.5.3.37-1. + type: object + required: + - vnffgInfoId + properties: + vnffgInfoId: + description: > + Identifier of an existing VNFFG to be updated for the NS Instance. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" + nfp: + description: > + Indicate the desired new NFP(s) for a given VNFFG + after the operations of addition/removal of NS + components (e.g. VNFs, VLs, etc.) have been + completed, or indicate the updated or newly created + NFP classification and selection rule which applied to an existing NFP. + type: array + items: + $ref: "#/definitions/NfpData" + nfpInfoId: + description: > + Identifier(s) of the NFP to be deleted from a given VNFFG. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" + + NfpData: + description: > + This type contains information used to create or modify NFP instance parameters + for the update of an existing VNFFG instance. + It shall comply with the provisions defined in Table 6.5.3.38-1. + type: object + properties: + nfpInfoId: + description: > + Identifier of the NFP to be modified. It shall be present + for modified NFPs and shall be absent for the new NFP. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" + nfpName: + description: > + Human readable name for the NFP. It shall be present + for the new NFP, and it may be present otherwise. + type: string + description: + description: > + Human readable description for the NFP. It shall be + present for the new NFP, and it may be present otherwise. + type: string + nsCpHandle: + description: > + Identifier(s) of the CPs and SAPs which the NFP passes by. + Cardinality can be 0 if only updated or newly created + NFP classification and selection rule which applied to an + existing NFP is provided. + type: array + items: + $ref: "#/definitions/NsCpHandle" + nfpRule: + description: > + NFP classification and selection rule. See note 1. + $ref: "#/definitions/NfpRule" + + NfpRule: + description: > + The NfpRule data type is an expression of the conditions that shall be met + in order for the NFP to be applicable to the packet. The condition acts as a flow classifier and + it is met only if all the values expressed in the condition are matched + by those in the packet. It shall comply with the provisions defined in Table 6.5.3.40-1. + type: object + properties: + etherDestinationAddress: + description: > + Indicates a destination Mac address. + $ref: "SOL005_def.yaml#/definitions/MacAddress" + etherSourceAddress: + description: > + Indicates a source Mac address. + $ref: "SOL005_def.yaml#/definitions/MacAddress" + etherType: + description: > + Human readable description for the VNFFG. + type: string + enum: + - IPV4 + - IPV6 + vlanTag: + description: > + Indicates a VLAN identifier in an IEEE 802.1Q-2014 + tag [6] Multiple tags can be included for QinQ stacking. See note. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/String" + protocol: + description: > + Indicates the L4 protocol, For IPv4 [7] this + corresponds to the field called "Protocol" to identify + the next level protocol. For IPv6 [28] this + corresponds to the field is called the "Next Header" field. + Permitted values: Any keyword defined in the IANA + protocol registry [1], e.g.: + TCP + UDP + ICMP + type: string + enum: + - TCP + - UDP + - ICMP + dscp: + description: > + For IPv4 [7] a string of "0" and "1" digits that + corresponds to the 6-bit Differentiated Services + Code Point (DSCP) field of the IP header. + For IPv6 [28] a string of "0" and "1" digits that + corresponds to the 6 differentiated services bits of + the traffic class header field + type: string + sourcePortRange: + description: > + Indicates a range of source ports + $ref: "SOL005_def.yaml#/definitions/PortRange" + destinationPortRange: + description: > + Indicates a range of destination ports. + $ref: "SOL005_def.yaml#/definitions/PortRange" + sourceIpAddressPrefix: + description: > + Indicates the source IP address range in CIDR format. + $ref: "SOL005_def.yaml#/definitions/IpAddressPrefix" + destinationIpAddressPrefix: + description: > + Indicates the destination IP address range in CIDR format. + $ref: "SOL005_def.yaml#/definitions/IpAddressPrefix" + extendedCriteria: + description: > + Indicates values of specific bits in a frame. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/Mask" + + ChangeNsFlavourData: + description: > + This type specifies an existing NS instance for which the DF needs to be changed. + This specifies the new DF, the instantiationLevel of the new DF that may be used and + the additional parameters as input for the flavour change. + It shall comply with the provisions defined in Table 6.5.3.39-1. + type: object + required: + - newNsFlavourId + properties: + newNsFlavourId: + description: > + Identifier of an existing VNFFG to be updated for the NS Instance. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + instantiationLevelId: + description: > + Identifier of the instantiation level of the deployment flavour to be instantiated. + If not present, the default instantiation level as declared in the NSD is instantiated. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + + AddPnfData: + description: > + This type specifies an PNF to be added to the NS instance and the PNF Profile + to use for this PNF. It shall comply with the provisions defined in Table 6.5.3.14-1. + type: object + required: + - pnfId + - pnfName + - pnfdId + - pnfProfileId + properties: + pnfId: + description: > + Identifier of the PNF. This identifier is allocated by the OSS/BSS. + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfName: + description: > + Name of the PNF + type: string + pnfdId: + description: > + Identifier of the PNFD on which the PNF is based. + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfProfileId: + description: > + Identifier of related PnfProfile in the NSD on which the PNF is based. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + cpData: + description: > + Address assigned for the PNF external CP(s). + type: array + items: + $ref: "#/definitions/PnfExtCpData" + + PnfExtCpData: + description: > + This type represents the configuration data on the external CP of the PNF. + It shall comply with the provisions defined in + Table 6.5.3.16-1. + type: object + required: + - cpProtocolData + properties: + cpInstanceI16: + description: > + Identifier of the CP. Shall be present for existing CP. + $ref: "SOL005_def.yaml#/definitions/IdentifierInPnf" + cpdId: + description: > + Identifier of the Connection Point Descriptor (CPD) for this CP. Shall be present for new CP. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + cpProtocolData: + description: > + Address assigned for this CP. + type: array + items: + $ref: "SOL005_def.yaml#/definitions/CpProtocolData" + + ModifyPnfData: + description: > + This type specifies an PNF to be modified in the NS instance. + It shall comply with the provisions defined in + Table 6.5.3.15-1. + type: object + required: + - pnfId + properties: + pnfId: + description: > + Identifier of the PNF. This identifier is allocated by the OSS/BSS. + $ref: "SOL005_def.yaml#/definitions/Identifier" + pnfName: + description: > + Name of the PNF. + type: string + cpData: + description: > + Address assigned for the PNF external CP(s). + type: array + items: + $ref: "#/definitions/PnfExtCpData" + + AffectedVirtualLink: + description: > + This type provides information about added, deleted, modified and + temporary VLs. + type: object + required: + - id + - virtualLinkDescId + - changeType + - networkResource + properties: + id: + description: > + Identifier of the virtual link instance, identifying the applicable + "vnfVirtualLinkResourceInfo" entry in the "VnfInstance" data type. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf" + virtualLinkDescId: + description: > + Identifier of the related VLD in the VNFD. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" + changeType: + description: > + Signals the type of change. Permitted values: + * ADDED + * REMOVED + * MODIFIED + * TEMPORARY + * LINK_PORT_ADDED + * LINK_PORT_REMOVED + For a temporary resource, an AffectedVirtualLink structure exists as + long as the temporary resource exists. type: string - additionalParams: + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + - LINK_PORT_ADDED + - LINK_PORT_REMOVED + networkResource: description: > - Additional input parameters for the instantiation process, - specific to the VNF being instantiated. + Reference to the VirtualNetwork resource. Detailed information is + (for new and modified resources) or has been (for removed + resources) available from the VIM. + $ref: "SOL005_def.yaml#/definitions/ResourceHandle" + metadata: + description: > + Metadata about this resource. + The content of this attribute shall be a copy of the content of the + "metadata" attribute of the VnfVirtualLinkResourceInfo structure. $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - - ChangeVnfFlavourData: - description: > - The type represents the information that is requested to be changed - deployment flavor for an existing VNF instance. - It shall comply with the provisions defined in Table 6.5.3.25-1. - type: object - required: - - vnfInstanceId - - newFlavourId - properties: - vnfInstanceId: - description: > - Identifier of the VNF instance to be modified. - $ref: "SOL005_def.yaml#/definitions/Identifier" - newFlavourId: - description: > - Identifier of the VNF deployment flavor to be instantiated. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" - instantiationLevelId: - description: > - Identifier of the instantiation level of the deployment - flavor to be instantiated. If not present, the default - instantiation level as declared in the VNFD is - instantiated. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" - extVirtualLinks: - description: > - Information about external VLs to connect the VNF to. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/ExtVirtualLinkData" - extManagedVirtualLinks: - description: > - information about internal VLs that are managed by NFVO. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/ExtManagedVirtualLinkData" - additionalParams: - description: > - Additional input parameters for the flavor change - process, specific to the VNF being modified, as declared - in the VNFD as part of "ChangeVnfFlavourOpConfig". - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - - OperateVnfData: + + AffectedVirtualStorage: description: > - This type represents a VNF instance for which the operational state - needs to be changed and the requested new state. It - shall comply with the provisions defined in Table 6.5.3.31-1. + This type provides information about added, deleted, modified and + temporary virtual storage resources. type: object required: - - vnfInstanceId - - changeStateTo + - id + - virtualStorageDescId + - changeType + - storageResource properties: - vnfInstanceId: + id: description: > - Identifier of the VNF instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" - changeStateTo: + Identifier of the storage instance, identifying the applicable + "virtualStorageResourceInfo" entry in the "VnfInstance" data type. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf" + virtualStorageDescId: description: > - The desired operational state (i.e. started or stopped) - to change the VNF to. - $ref: "#/definitions/OperationalStates" - stopType: + Identifier of the related VirtualStorage descriptor in the VNFD. + $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" + changeType: description: > - It signals whether forceful or graceful stop is requested. - $ref: "#/definitions/StopType" - gracefulStopTimeout: + Signals the type of change. Permitted values: + * ADDED + * REMOVED + * MODIFIED + * TEMPORARY + For a temporary resource, an AffectedVirtualStorage structure exists + as long as the temporary resource exists. + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + - TEMPORARY + storageResource: + description: > + Reference to the VirtualStorage resource. Detailed information is + (for new and modified resources) or has been (for removed + resources) available from the VIM. + $ref: "SOL005_def.yaml#/definitions/ResourceHandle" + metadata: description: > - The time interval (in seconds) to wait for the VNF to be - taken out of service during graceful stop, before - stopping the VNF. - type: integer - - OperationalStates: - description: > - STARTED - The VNF instance is up and running. - STOPPED - The VNF instance has been shut down. - type: string - enum: - - STARTED - - STOPPED - StopType: - description: > - * FORCEFUL: The VNFM will stop the VNF immediately after accepting the - request. - * GRACEFUL: The VNFM will first arrange to take the VNF out of service - after accepting the request. Once that operation is successful or once - the timer value specified in the "gracefulStopTimeout" attribute - expires, the VNFM will stop the VNF. - type: string - enum: - - FORCEFUL - - GRACEFUL - - ModifyVnfInfoData: - description: > - This type represents the information that is requested to be modified for a VNF instance. The information to be - modified shall comply with the associated NSD. - EXAMPLE. The vnfPkgId attribute value for a particular VNF instance can only be updated with a value that - matches the identifier value of a VNF package whose vnfdId is present in the associated profile of the NSD. - type: object - required: - - vnfInstanceId - properties: - vnfInstanceId: - description: > - Identifier of the VNF instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfInstanceName: - description: > - New value of the "vnfInstanceName" attribute in - "VnfInstance", or "null" to remove the attribute. - type: string - vnfInstanceDescription: - description: > - New value of the "vnfInstanceDescription" attribute in "VnfInstance", - or "null" to remove the attribute. - type: string - vnfPkgId: - description: > - New value of the "vnfPkgId" attribute in "VnfInstance". - The value "null" is not permitted - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfConfigurableProperties: - description: > - Modifications to entries in the - "vnfConfigurableProperties" list, as defined below this Table. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - Metadata: - description: > - Modifications to entries in the "metadata" list, as - defined below this Table. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - Extensions: - description: > - Modifications to entries in the "extensions" list, as - defined below this Table. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - - ChangeExtVnfConnectivityData: - description: > - This type describes the information invoked by the NFVO to change the external VNF connectivity information - maintained by the VNFM. The types of changes that this operation supports are: - 1) Disconnect the external CPs that are connected to a particular external VL, and connect them to a different - external VL. - 2) Change the connectivity parameters of the existing external CPs, including changing addresses. - NOTE: Depending on the capabilities of the underlying VIM resources, certain changes (e.g. modifying the IP - address assignment) might not be supported without deleting the resource and creating another one with - the modified configuration. - This type shall comply with the provisions defined in Table 6.5.3.33-1. - type: object - required: - - vnfInstanceId - - extVirtualLink - properties: - vnfInstanceId: - description: > - Identifier of the VNF instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" - extVirtualLink: - description: > - Information about external VLs to change (e.g. connect the VNF to). - type: array - items: - $ref: "SOL005_def.yaml#/definitions/ExtVirtualLinkData" - additionalParams: - description: > - Additional parameters passed by the OSS as input to - the external connectivity change process, specific to the - VNF instance being changed. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - - AssocNewNsdVersionData: - description: > - This type specifies a new NSD version that is associated to the NS instance. After issuing the Update NS operation with - updateType = "AssocNewNsdVersion", the NFVO shall use the referred NSD as a basis for the given NS instance. - Different versions of the same NSD have same nsdInvariantId, but different nsdId attributes, therefore if the - nsdInvariantId of the NSD version that is to be associated to this NS instance is different from the one used before, the - NFVO shall reject the request. Only new versions of the same NSD can be associated to an existing NS instance. This - data type shall comply with the provisions defined in Table 6.5.3.34-1. - type: object - required: - - newNsdId - properties: - newNsdId: - description: > - Identifier of the new NSD version that is to be - associated to the NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" - sync: - description: > - Specify whether the NS instance shall be automatically - synchronized to the new NSD by the NFVO (in case of - true value) or the NFVO shall not do any action (in case - of a false value) and wait for further guidance from - OSS/BSS (i.e. waiting for OSS/BSS to issue NS - lifecycle management operation to explicitly add/remove - VNFs and modify information of VNF instances - according to the new NSD). - The synchronization to the new NSD means e.g. - instantiating/adding those VNFs whose VNFD is - referenced by the new NSD version but not referenced - by the old one, terminating/removing those VNFs whose - VNFD is referenced by the old NSD version but not - referenced by the new NSD version, modifying - information of VNF instances to the new applicable - VNFD provided in the new NSD version. - A cardinality of 0 indicates that synchronization shall not be done. - type: boolean - - MoveVnfInstanceData: - description: > - This type specifies existing VNF instances to be moved from one NS instance (source) to another NS instance - (destination). The NS instance defined in the Update NS operation indicates the source NS instance and the destination - NS instance is specified in this data type (referred to targetNsInstanceId). - It shall comply with the provisions defined in Table 6.5.3.35-1. - type: object - required: - - targetNsInstanceId - properties: - targetNsInstanceId: - description: > - Specify the target NS instance where the VNF instances - are moved to. - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfInstanceId: - description: > - Specify the VNF instance that is moved. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" - - AddVnffgData: - description: > - This type specifies the parameters used for the creation of a new VNFFG instance. - It shall comply with the provisions defined in Table 6.5.3.36-1. - type: object - required: - - vnffgdId - - vnffgName - - description - properties: - targetNsInstanceId: - description: > - Identifier of the VNFFGD used to create this VNFFG - instance. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - vnffgName: - description: > - Human readable name for the VNFFG. - type: string - description: - description: > - Human readable description for the VNFFG. - type: string - - UpdateVnffgData: - description: > - This type specifies the parameters used for the update of an existing VNFFG instance. - It shall comply with the provisions defined in Table 6.5.3.37-1. - type: object - required: - - vnffgInfoId - properties: - vnffgInfoId: - description: > - Identifier of an existing VNFFG to be updated for the NS Instance. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" - nfp: - description: > - Indicate the desired new NFP(s) for a given VNFFG - after the operations of addition/removal of NS - components (e.g. VNFs, VLs, etc.) have been - completed, or indicate the updated or newly created - NFP classification and selection rule which applied to an existing NFP. - type: array - items: - $ref: "#/definitions/NfpData" - nfpInfoId: - description: > - Identifier(s) of the NFP to be deleted from a given VNFFG. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" - - NfpData: - description: > - This type contains information used to create or modify NFP instance parameters - for the update of an existing VNFFG instance. - It shall comply with the provisions defined in Table 6.5.3.38-1. - type: object - properties: - nfpInfoId: - description: > - Identifier of the NFP to be modified. It shall be present - for modified NFPs and shall be absent for the new NFP. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" - nfpName: - description: > - Human readable name for the NFP. It shall be present - for the new NFP, and it may be present otherwise. - type: string - description: - description: > - Human readable description for the NFP. It shall be - present for the new NFP, and it may be present otherwise. - type: string - nsCpHandle: - description: > - Identifier(s) of the CPs and SAPs which the NFP passes by. - Cardinality can be 0 if only updated or newly created - NFP classification and selection rule which applied to an - existing NFP is provided. - type: array - items: - $ref: "#/definitions/NsCpHandle" - nfpRule: - description: > - NFP classification and selection rule. See note 1. - $ref: "#/definitions/NfpRule" - - NfpRule: - description: > - The NfpRule data type is an expression of the conditions that shall be met - in order for the NFP to be applicable to the packet. The condition acts as a flow classifier and - it is met only if all the values expressed in the condition are matched - by those in the packet. It shall comply with the provisions defined in Table 6.5.3.40-1. - type: object - properties: - etherDestinationAddress: - description: > - Indicates a destination Mac address. - $ref: "SOL005_def.yaml#/definitions/MacAddress" - etherSourceAddress: - description: > - Indicates a source Mac address. - $ref: "SOL005_def.yaml#/definitions/MacAddress" - etherType: - description: > - Human readable description for the VNFFG. - type: string - enum: - - IPV4 - - IPV6 - vlanTag: - description: > - Indicates a VLAN identifier in an IEEE 802.1Q-2014 - tag [6] Multiple tags can be included for QinQ stacking. See note. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/String" - protocol: - description: > - Indicates the L4 protocol, For IPv4 [7] this - corresponds to the field called "Protocol" to identify - the next level protocol. For IPv6 [28] this - corresponds to the field is called the "Next Header" field. - Permitted values: Any keyword defined in the IANA - protocol registry [1], e.g.: - TCP - UDP - ICMP - type: string - enum: - - TCP - - UDP - - ICMP - dscp: - description: > - For IPv4 [7] a string of "0" and "1" digits that - corresponds to the 6-bit Differentiated Services - Code Point (DSCP) field of the IP header. - For IPv6 [28] a string of "0" and "1" digits that - corresponds to the 6 differentiated services bits of - the traffic class header field - type: string - sourcePortRange: - description: > - Indicates a range of source ports - $ref: "SOL005_def.yaml#/definitions/PortRange" - destinationPortRange: - description: > - Indicates a range of destination ports. - $ref: "SOL005_def.yaml#/definitions/PortRange" - sourceIpAddressPrefix: - description: > - Indicates the source IP address range in CIDR format. - $ref: "SOL005_def.yaml#/definitions/IpAddressPrefix" - destinationIpAddressPrefix: - description: > - Indicates the destination IP address range in CIDR format. - $ref: "SOL005_def.yaml#/definitions/IpAddressPrefix" - extendedCriteria: - description: > - Indicates values of specific bits in a frame. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/Mask" - - ChangeNsFlavourData: - description: > - This type specifies an existing NS instance for which the DF needs to be changed. - This specifies the new DF, the instantiationLevel of the new DF that may be used and - the additional parameters as input for the flavour change. - It shall comply with the provisions defined in Table 6.5.3.39-1. - type: object - required: - - newNsFlavourId - properties: - newNsFlavourId: - description: > - Identifier of an existing VNFFG to be updated for the NS Instance. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - instantiationLevelId: - description: > - Identifier of the instantiation level of the deployment flavour to be instantiated. - If not present, the default instantiation level as declared in the NSD is instantiated. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - - AddPnfData: - description: > - This type specifies an PNF to be added to the NS instance and the PNF Profile - to use for this PNF. It shall comply with the provisions defined in Table 6.5.3.14-1. - type: object - required: - - pnfId - - pnfName - - pnfdId - - pnfProfileId - properties: - pnfId: - description: > - Identifier of the PNF. This identifier is allocated by the OSS/BSS. - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfName: - description: > - Name of the PNF - type: string - pnfdId: - description: > - Identifier of the PNFD on which the PNF is based. - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfProfileId: - description: > - Identifier of related PnfProfile in the NSD on which the PNF is based. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - cpData: - description: > - Address assigned for the PNF external CP(s). - type: array - items: - $ref: "#/definitions/PnfExtCpData" - - PnfExtCpData: - description: > - This type represents the configuration data on the external CP of the PNF. - It shall comply with the provisions defined in - Table 6.5.3.16-1. - type: object - required: - - cpProtocolData - properties: - cpInstanceI16: - description: > - Identifier of the CP. Shall be present for existing CP. - $ref: "SOL005_def.yaml#/definitions/IdentifierInPnf" - cpdId: - description: > - Identifier of the Connection Point Descriptor (CPD) for this CP. Shall be present for new CP. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - cpProtocolData: - description: > - Address assigned for this CP. - type: array - items: - $ref: "SOL005_def.yaml#/definitions/CpProtocolData" - - ModifyPnfData: - description: > - This type specifies an PNF to be modified in the NS instance. - It shall comply with the provisions defined in - Table 6.5.3.15-1. - type: object - required: - - pnfId - properties: - pnfId: - description: > - Identifier of the PNF. This identifier is allocated by the OSS/BSS. - $ref: "SOL005_def.yaml#/definitions/Identifier" - pnfName: - description: > - Name of the PNF. - type: string - cpData: - description: > - Address assigned for the PNF external CP(s). - type: array - items: - $ref: "#/definitions/PnfExtCpData" - - AffectedVirtualLink: - description: > - This type provides information about added, deleted, modified and - temporary VLs. - type: object - required: - - id - - virtualLinkDescId - - changeType - - networkResource - properties: - id: - description: > - Identifier of the virtual link instance, identifying the applicable - "vnfVirtualLinkResourceInfo" entry in the "VnfInstance" data type. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf" - virtualLinkDescId: - description: > - Identifier of the related VLD in the VNFD. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" - changeType: - description: > - Signals the type of change. Permitted values: - * ADDED - * REMOVED - * MODIFIED - * TEMPORARY - * LINK_PORT_ADDED - * LINK_PORT_REMOVED - For a temporary resource, an AffectedVirtualLink structure exists as - long as the temporary resource exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - - LINK_PORT_ADDED - - LINK_PORT_REMOVED - networkResource: - description: > - Reference to the VirtualNetwork resource. Detailed information is - (for new and modified resources) or has been (for removed - resources) available from the VIM. - $ref: "SOL005_def.yaml#/definitions/ResourceHandle" - metadata: - description: > - Metadata about this resource. - The content of this attribute shall be a copy of the content of the - "metadata" attribute of the VnfVirtualLinkResourceInfo structure. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + Metadata about this resource. + The content of this attribute shall be a copy of the content of the + "metadata" attribute of the VirtualStorageResourceInfo structure. + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - AffectedVirtualStorage: - description: > - This type provides information about added, deleted, modified and - temporary virtual storage resources. - type: object - required: - - id - - virtualStorageDescId - - changeType - - storageResource - properties: - id: - description: > - Identifier of the storage instance, identifying the applicable - "virtualStorageResourceInfo" entry in the "VnfInstance" data type. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf" - virtualStorageDescId: - description: > - Identifier of the related VirtualStorage descriptor in the VNFD. - $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd" - changeType: - description: > - Signals the type of change. Permitted values: - * ADDED - * REMOVED - * MODIFIED - * TEMPORARY - For a temporary resource, an AffectedVirtualStorage structure exists - as long as the temporary resource exists. - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - TEMPORARY - storageResource: - description: > - Reference to the VirtualStorage resource. Detailed information is - (for new and modified resources) or has been (for removed - resources) available from the VIM. - $ref: "SOL005_def.yaml#/definitions/ResourceHandle" - metadata: - description: > - Metadata about this resource. - The content of this attribute shall be a copy of the content of the - "metadata" attribute of the VirtualStorageResourceInfo structure. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - AffectedVnf: description: > This type provides information about added, deleted and modified VNFs. @@ -2349,7 +2349,7 @@ definitions: required: - vnfInstanceId - vnfdId - - vnfProfileId + - vnfProfileId properties: vnfInstanceId: description: > @@ -2384,13 +2384,13 @@ definitions: type: string enum: - ADD - - REMOVE + - REMOVE - INSTANTIATE - TERMINATE - SCALE - CHANGE_FLAVOUR - HEAL - - OPERATE + - OPERATE - MODIFY_INFORMATION - CHANGE_EXTERNAL_VNF_CONNECTIVITY changeResult: @@ -2404,7 +2404,7 @@ definitions: type: string enum: - COMPLETED - - ROLLED_BACK + - ROLLED_BACK - FAILED changedInfo: description: > @@ -2438,7 +2438,7 @@ definitions: - pnfId - pnfdId - pnfProfileId - - cpInstanceId + - cpInstanceId properties: pnfId: description: > @@ -2461,8 +2461,8 @@ definitions: description: > Identifier of the CP in the scope of the PNF. type: array - items: - $ref: "SOL005_def.yaml#/definitions/IdentifierInPnf" + items: + $ref: "SOL005_def.yaml#/definitions/IdentifierInPnf" changeType: description: > Signals the type of change. @@ -2473,8 +2473,8 @@ definitions: type: string enum: - ADD - - REMOVE - - MODIFY + - REMOVE + - MODIFY changeResult: description: > Signals the result of change identified by the @@ -2486,9 +2486,9 @@ definitions: type: string enum: - COMPLETED - - ROLLED_BACK - - FAILED - + - ROLLED_BACK + - FAILED + AffectedVl: description: > This type provides information about added, deleted and modified VLs. @@ -2497,7 +2497,7 @@ definitions: required: - nsVirtualLinkInstanceId - nsVirtualLinkDescId - - vlProfileId + - vlProfileId properties: nsVirtualLinkInstanceId: description: > @@ -2523,10 +2523,10 @@ definitions: type: string enum: - ADD - - DELETE - - MODIFY + - DELETE + - MODIFY - ADD_LINK_PORT - - REMOVE_LINK_PORT + - REMOVE_LINK_PORT changeResult: description: > Signals the result of change identified by the @@ -2538,153 +2538,153 @@ definitions: type: string enum: - COMPLETED - - ROLLED_BACK + - ROLLED_BACK - FAILED - + AffectedVnffg: - description: > - This type provides information about added, deleted and modified VNFFG instances. - It shall comply with the - provisions in Table 6.5.3.5-1. - type: object - required: - - vnffgInstanceId - - vnffgdId - properties: - vnffgInstanceId: - description: > - Identifier of the VNFFG instance. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" - vnffgdId: - description: > - Identifier of the VNFFGD of the VNFFG instance. - $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" - changeType: - description: > - Signals the type of change. - Permitted values: - - ADD - - DELETE - - MODIFY - type: string - enum: - - ADD - - DELETE - - MODIFY - changeResult: - description: > - Signals the result of change identified by the - "changeType" attribute. - Permitted values: - - COMPLETED - - ROLLED_BACK - - FAILED - type: string - enum: - - COMPLETED - - ROLLED_BACK - - FAILED - + description: > + This type provides information about added, deleted and modified VNFFG instances. + It shall comply with the + provisions in Table 6.5.3.5-1. + type: object + required: + - vnffgInstanceId + - vnffgdId + properties: + vnffgInstanceId: + description: > + Identifier of the VNFFG instance. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNs" + vnffgdId: + description: > + Identifier of the VNFFGD of the VNFFG instance. + $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + changeType: + description: > + Signals the type of change. + Permitted values: + - ADD + - DELETE + - MODIFY + type: string + enum: + - ADD + - DELETE + - MODIFY + changeResult: + description: > + Signals the result of change identified by the + "changeType" attribute. + Permitted values: + - COMPLETED + - ROLLED_BACK + - FAILED + type: string + enum: + - COMPLETED + - ROLLED_BACK + - FAILED + AffectedNs: - description: > - This type provides information about added, deleted and modified nested NSs. - It shall comply with the provisions in Table 6.5.3.6-1. - type: object - required: - - nsInstanceId - - nsdId - properties: - nsInstanceId: - description: > - Identifier of the nested NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsdId: - description: > - Identifier of the NSD of the nested NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" - changeType: - description: > - Signals the type of lifecycle change. - Permitted values: - - ADD - - REMOVE - - INSTANTIATE - - SCALE - - UPDATE - - HEAL - - TERMINATE - type: string - enum: - - ADD - - REMOVE - - INSTANTIATE - - SCALE - - UPDATE - - HEAL - - TERMINATE - changeResult: - description: > - Signals the result of change identified by the - "changeType" attribute. - Permitted values: - - COMPLETED - - ROLLED_BACK - - FAILED - - PARTIALLY_COMPLETED - type: string - enum: - - COMPLETED - - ROLLED_BACK - - FAILED - - PARTIALLY_COMPLETED + description: > + This type provides information about added, deleted and modified nested NSs. + It shall comply with the provisions in Table 6.5.3.6-1. + type: object + required: + - nsInstanceId + - nsdId + properties: + nsInstanceId: + description: > + Identifier of the nested NS instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" + nsdId: + description: > + Identifier of the NSD of the nested NS instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" + changeType: + description: > + Signals the type of lifecycle change. + Permitted values: + - ADD + - REMOVE + - INSTANTIATE + - SCALE + - UPDATE + - HEAL + - TERMINATE + type: string + enum: + - ADD + - REMOVE + - INSTANTIATE + - SCALE + - UPDATE + - HEAL + - TERMINATE + changeResult: + description: > + Signals the result of change identified by the + "changeType" attribute. + Permitted values: + - COMPLETED + - ROLLED_BACK + - FAILED + - PARTIALLY_COMPLETED + type: string + enum: + - COMPLETED + - ROLLED_BACK + - FAILED + - PARTIALLY_COMPLETED AffectedSap: - description: > - This type provides information about added, deleted and modified SAP of a NS. - It shall comply with the provisions in Table 6.5.3.7-1. - type: object - required: - - sapInstanceId - - sapdId - properties: - sapInstanceId: - description: > - Identifier of the nested NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" - sapdId: - description: > - Identifier of the NSD of the nested NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" - sapName: - description: > - Human readable name for the SAP. - type: string - changeType: - description: > - Signals the type of lifecycle change. - Permitted values: - - ADD - - REMOVE - - MODIFY - type: string - enum: - - ADD - - REMOVE - - MODIFY - changeResult: - description: > - Signals the result of change identified by the - "changeType" attribute. - Permitted values: - - COMPLETED - - ROLLED_BACK - - FAILED - type: string - enum: - - COMPLETED - - ROLLED_BACK - - FAILED - + description: > + This type provides information about added, deleted and modified SAP of a NS. + It shall comply with the provisions in Table 6.5.3.7-1. + type: object + required: + - sapInstanceId + - sapdId + properties: + sapInstanceId: + description: > + Identifier of the nested NS instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" + sapdId: + description: > + Identifier of the NSD of the nested NS instance. + $ref: "SOL005_def.yaml#/definitions/Identifier" + sapName: + description: > + Human readable name for the SAP. + type: string + changeType: + description: > + Signals the type of lifecycle change. + Permitted values: + - ADD + - REMOVE + - MODIFY + type: string + enum: + - ADD + - REMOVE + - MODIFY + changeResult: + description: > + Signals the result of change identified by the + "changeType" attribute. + Permitted values: + - COMPLETED + - ROLLED_BACK + - FAILED + type: string + enum: + - COMPLETED + - ROLLED_BACK + - FAILED + NsLcmOperationStateType: description: > The enumeration NsLcmOperationStateType shall comply with the provisions defined in Table 6.5.4.4-1. @@ -2704,25 +2704,25 @@ definitions: - FAILED_TEMP - FAILED - ROLLING_BACK - - ROLLED_BACK + - ROLLED_BACK NsLcmOpType: - description: > - The enumeration NsLcmOpType represents those lifecycle operations that trigger a NS lifecycle management operation - occurrence notification. - Value | Description - ------|------------ - INSTANTIATE | Represents the "Instantiate NS" LCM operation. - SCALE | Represents the "Scale NS" LCM operation. - UPDATE | Represents the "Update NS" LCM operation. - TERMINATE | Represents the "Terminate NS" LCM operation. - HEAL | Represents the "Heal NS" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - UPDATE - - TERMINATE - - HEAL + description: > + The enumeration NsLcmOpType represents those lifecycle operations that trigger a NS lifecycle management operation + occurrence notification. + Value | Description + ------|------------ + INSTANTIATE | Represents the "Instantiate NS" LCM operation. + SCALE | Represents the "Scale NS" LCM operation. + UPDATE | Represents the "Update NS" LCM operation. + TERMINATE | Represents the "Terminate NS" LCM operation. + HEAL | Represents the "Heal NS" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - UPDATE + - TERMINATE + - HEAL LccnSubscriptionRequest: description: > This type represents a subscription request related to notifications @@ -2732,12 +2732,12 @@ definitions: required: - callbackUri properties: - filter: + filter: description: > - Filter settings for this subscription, to define the subset - of all notifications this subscription relates to. A - particular notification is sent to the subscriber if the filter - matches, or if there is no filter. + Filter settings for this subscription, to define the subset + of all notifications this subscription relates to. A + particular notification is sent to the subscriber if the filter + matches, or if there is no filter. $ref: "#/definitions/LifecycleChangeNotificationsFilter" callbackUri: description: > @@ -2751,7 +2751,7 @@ definitions: This attribute shall only be present if the subscriber requires authorization of notifications. $ref: "SOL005_def.yaml#/definitions/SubscriptionAuthentication" - + LccnSubscription: description: > This type represents a subscription related to notifications about NS lifecycle changes. @@ -2787,7 +2787,7 @@ definitions: self: description: > URI of this resource. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "SOL005_def.yaml#/definitions/Link" LifecycleChangeNotificationsFilter: description: > This type represents a subscription filter related to notifications about @@ -2819,7 +2819,7 @@ definitions: - NsLcmOperationOccurenceNotification - NsIdentifierCreationNotification - NsIdentifierDeletionNotification - - NsChangeNotification + - NsChangeNotification operationTypes: description: > Match particular NS lifecycle operation types @@ -2830,7 +2830,7 @@ definitions: "NsLcmOperationOccurrenceNotification", and shall be absent otherwise. type: array - items: + items: $ref: "#/definitions/NsLcmOpType" operationStates: description: > @@ -2842,7 +2842,7 @@ definitions: "NsLcmOperationOccurrenceNotification", and shall be absent otherwise. type: array - items: + items: $ref: "#/definitions/LcmOperationStateType" nsComponentTypes: description: > @@ -2851,7 +2851,7 @@ definitions: May be present if the "notificationTypes" attribute contains the value "NsChang. type: array - items: + items: $ref: "#/definitions/NsComponentType" lcmOpNameImpactingNsComponent: description: > @@ -2861,7 +2861,7 @@ definitions: attribute contains the value "NsChangeNotification", and shall be absent otherwise. type: array - items: + items: $ref: "#/definitions/LcmOpNameForChangeNotificationType" lcmOpOccStatusImpactingNsComponent: description: > @@ -2872,16 +2872,16 @@ definitions: attribute contains the value "NsChangeNotification", and shall be absent otherwise. type: array - items: + items: $ref: "#/definitions/LcmOpOccStatusForChangeNotificationType" - + NsLcmOperationOccurrenceNotification: type: object required: - id - nsInstanceId - nsLcmOpOccId - - subscriptionId + - subscriptionId properties: id: description: > @@ -2897,7 +2897,7 @@ definitions: description: > The identifier of the NS lifecycle operation occurrence associated to the notification. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" operation: description: > The lifecycle operation. @@ -2929,7 +2929,7 @@ definitions: type: string enum: - START - - RESULT + - RESULT operationState: description: > The state of the NS lifecycle operation occurrence. @@ -2988,41 +2988,41 @@ definitions: description: > Links to resources related to this notification. $ref: "#/definitions/LccnLinks" - + NsIdentifierCreationNotification: type: object required: - subscriptionId - - nsInstanceId + - nsInstanceId properties: notificationType: description: > - Discriminator for the different notification types. - Shall be set to "NsIdentifierDeletionNotification" for this - notification type. + Discriminator for the different notification types. + Shall be set to "NsIdentifierDeletionNotification" for this + notification type. type: string subscriptionId: description: > - Identifier of the subscription that this notification relates to. - $ref: "SOL005_def.yaml#/definitions/Identifier" + Identifier of the subscription that this notification relates to. + $ref: "SOL005_def.yaml#/definitions/Identifier" timestamp: description: > Date-time of the generation of the notification. $ref: "SOL005_def.yaml#/definitions/DateTime" nsInstanceId: description: > - The created NS instance identifier - $ref: "SOL005_def.yaml#/definitions/Identifier" + The created NS instance identifier + $ref: "SOL005_def.yaml#/definitions/Identifier" _links: description: > Links to resources related to this notification. - $ref: "#/definitions/LccnLinks" + $ref: "#/definitions/LccnLinks" NsIdentifierDeletionNotification: type: object required: - subscriptionId - - nsInstanceId + - nsInstanceId properties: notificationType: description: > @@ -3032,21 +3032,21 @@ definitions: type: string subscriptionId: description: > - Identifier of the subscription that this notification relates to. - $ref: "SOL005_def.yaml#/definitions/Identifier" + Identifier of the subscription that this notification relates to. + $ref: "SOL005_def.yaml#/definitions/Identifier" timestamp: description: > Date-time of the generation of the notification. $ref: "SOL005_def.yaml#/definitions/DateTime" nsInstanceId: description: > - The created NS instance identifier - $ref: "SOL005_def.yaml#/definitions/Identifier" + The created NS instance identifier + $ref: "SOL005_def.yaml#/definitions/Identifier" _links: description: > Links to resources related to this notification. $ref: "#/definitions/LccnLinks" - + NsScaleInfo: description: > This type represents the target NS Scale level for each NS scaling aspect of the current deployment flavor. @@ -3075,31 +3075,31 @@ definitions: needed, the VNF Profile to be used for this VNF instance may also be provided. type: array - items: - $ref: "#/definitions/VnfInstanceData" + items: + $ref: "#/definitions/VnfInstanceData" vnfInstanceToBeRemoved: description: > The VNF instance to be removed from the NS instance as part of the scaling operation. type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" scaleNsByStepsData: description: > The information used to scale an NS instance by one or more scaling steps. - $ref: "#/definitions/ScaleNsByStepsData" + $ref: "#/definitions/ScaleNsByStepsData" scaleNsToLevelData: description: > The information used to scale an NS instance to a target size. - $ref: "#/definitions/ScaleNsToLevelData" + $ref: "#/definitions/ScaleNsToLevelData" additionalParamsForNs: description: > Allows the OSS/BSS to provide additional parameter(s) at the NS level necessary for the NS scaling (as opposed to the VNF level, which is covered in additionalParamForVnf). - $ref: "#/definitions/ParamsForVnf" + $ref: "#/definitions/ParamsForVnf" additionalParamsForVnf: description: > Allows the OSS/BSS to provide additional @@ -3110,8 +3110,8 @@ definitions: scaling and not for existing VNF that are covered by the scaleVnfData. type: array - items: - $ref: "#/definitions/ParamsForVnf" + items: + $ref: "#/definitions/ParamsForVnf" locationConstraints: description: > The location constraints for the VNF to be @@ -3119,8 +3119,8 @@ definitions: An example can be a constraint for the VNF to be in a specific geographic location. type: array - items: - $ref: "#/definitions/VnfLocationConstraint" + items: + $ref: "#/definitions/VnfLocationConstraint" ScaleVnfData: description: > @@ -3129,12 +3129,12 @@ definitions: type: object required: - vnfInstanceid - - scaleVnfType + - scaleVnfType properties: vnfInstanceid: description: > Identifier of the VNF instance being scaled. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" scaleVnfType: description: > Type of the scale VNF operation requested. @@ -3146,20 +3146,20 @@ definitions: The set of types actually supported depends on the capabilities of the VNF being managed. type: string - enum: + enum: - SCALE_OUT - - SCALE_IN - - SCALE_TO_INSTANTIATION_LEVEL - - SCALE_TO_SCALE_LEVEL(S) + - SCALE_IN + - SCALE_TO_INSTANTIATION_LEVEL + - SCALE_TO_SCALE_LEVEL(S) scaleToLevelData: description: > The information used for scaling to a given level. - $ref: "#/definitions/ScaleToLevelData" + $ref: "#/definitions/ScaleToLevelData" scaleByStepData: description: > The information used for scaling by steps. - $ref: "#/definitions/ScaleByStepData" - + $ref: "#/definitions/ScaleByStepData" + ScaleNsByStepsData: description: > This type represents the information used to scale an NS instance by one or more scaling steps, with respect to a @@ -3209,9 +3209,9 @@ definitions: For each NS scaling aspect of the current DF, defines the target NS scale level to which the NS instance is to be scaled. type: array - items: + items: $ref: "#/definitions/NsScaleInfo" - + ScaleToLevelData: description: > This type describes the information used to scale a VNF instance to a target size. The target size is either expressed as @@ -3231,13 +3231,13 @@ definitions: flavor, indicates the target scale level to which the VNF is to be scaled. type: array - items: - $ref: "#/definitions/VnfScaleInfo" + items: + $ref: "#/definitions/VnfScaleInfo" additionalParams: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" ScaleByStepData: description: > @@ -3262,7 +3262,7 @@ definitions: at a time. Such a property in the VNFD applies for all instances of a particular VNF. type: integer - default: 1 + default: 1 additionalParams: description: > Additional parameters passed by the NFVO as input to @@ -3282,8 +3282,8 @@ definitions: based on a NSD identified by one of the nsdId values listed in this attribute. type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" vnfdIds: description: > If present, match NS instances that contain VNF @@ -3291,31 +3291,31 @@ definitions: identified by one of the vnfdId values listed in this attribute. type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" pnfdIds: description: > If present, match NS instances that contain PNFs that are represented by a PNFD identified by one of the pnfdId values listed in this attribute. type: array - items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + items: + $ref: "SOL005_def.yaml#/definitions/Identifier" nsInstanceIds: description: > If present, match NS instances with an instance identifier listed in this attribute. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" nsInstanceNames: description: > If present, match NS instances with a NS Instance Name listed in this attribute. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/String" - + LcmOperationStateType: description: > Value | Description @@ -3336,7 +3336,7 @@ definitions: - FAILED - ROLLING_BACK - ROLLED_BACK - + NsComponentType: description: > The enumeration NsComponentType represents the NS component type. It shall comply with the provisions defined in Table 6.5.4.5-1. @@ -3349,7 +3349,7 @@ definitions: enum: - VNF - PNF - - NS + - NS LcmOpNameForChangeNotificationType: description: > The enumeration LcmOpNameForChangeNotificationType represents the name of the lifecycle operation that impacts the NS component and trigger an NS change notification. It shall comply with the provisions defined in Table 6.5.4.6-1. @@ -3373,7 +3373,7 @@ definitions: enum: - VNF_INSTANTIATE - VNF_SCALE - - VNF_SCALE_TO_LEVEL + - VNF_SCALE_TO_LEVEL - VNF_CHANGE_FLAVOUR - VNF_TERMINATE - VNF_HEAL @@ -3382,7 +3382,7 @@ definitions: - VNF_MODIFY_INFO - NS_INSTANTIATE - NS_SCALE - - NS_UPDATE + - NS_UPDATE - NS_TERMINATE - NS_HEAL LcmOpOccStatusForChangeNotificationType: @@ -3401,6 +3401,6 @@ definitions: enum: - START - COMPLETED - - PARTIALLY_COMPLETED + - PARTIALLY_COMPLETED - FAILED - ROLLED_BACK \ No newline at end of file diff --git a/src/SOL005/NSLifecycleManagement/definitions/SOL005_def.yaml b/src/SOL005/NSLifecycleManagement/definitions/SOL005_def.yaml index 8c49260..04921dc 100644 --- a/src/SOL005/NSLifecycleManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/NSLifecycleManagement/definitions/SOL005_def.yaml @@ -1,616 +1,616 @@ # Copyright (c) ETSI 2017. # https://forge.etsi.org/etsi-forge-copyright-notice.txt - definitions: - Identifier: - description: > - An identifier with the intention of being globally unique. - type: string - - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - type: string - - nsInstanceId: - description: > - The deleted NS instance identifier. - type: string - - Link: - description: > - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: > - URI of the referenced resource. - type: string - format: url - - DateTime: - description: > - Date-time stamp. - Representation: String formatted according to IETF RFC 3339. - type: string - format: "date-time" - - String: - description: > - This type represents stack of string values - type: string - - KeyValuePairs: - description: > - This type represents a list of key-value pairs. The order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - - IdentifierInVnfd: - description: > - Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. - type: string - - IdentifierInVnf: - description: > - An identifier that is unique for the respective type within a VNF - instance, but may not be globally unique. - type: string - - IdentifierInNsd: - description: > - An identifier that is unique within a NS descriptor. Representation: string of variable - length. - type: string - - IdentifierInPnf: - description: > - Identifier of the CP in the scope of the PNF. - type: string - - IdentifierInNs: - description: > - An identifier that is unique with respect to a NS. - Representation: string of variable length. - type: string - - MacAddress: - description: > - A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons. - type: string - format: MAC - - IpAddress: - description: > - An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal - integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that - consists of groups of zero to four hexadecimal digits, separated by colons. - type: string - format: IP - - IpAddressPrefix: - description: > - An IPV4 or IPV6 address range in CIDR format. For IPV4 address range, refer to IETF - RFC 4632 [12]. For IPV6 address range, refer to IETF RFC 4291 [11]. - type: string - format: CIDR - - IdentifierInVim: - description: > - An identifier maintained by the VIM or other resource provider. It is - expected to be unique within the VIM instance. - type: string - - ProblemDetails: - #SOL005 location: 4.3.5.3-1 - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present document, - to ensure that the response contains additional textual information about - an error. IETF RFC 7807 [19] foresees extensibility of the - "ProblemDetails" type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to define - additional attributes that provide more information about the error. - The description column only provides some explanation of the meaning to - Facilitate understanding of the design. For a full description, see - IETF RFC 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies the - problem type. It is encouraged that the URI provides human-readable - documentation for the problem (e.g. using HTML) when dereferenced. - When this member is not present, its value is assumed to be - "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should not - change from occurrence to occurrence of the problem, except for - purposes of localization. If type is given and other than - "about:blank", this attribute shall also be provided. - A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of the - problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by the origin - server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of the - problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - #TODO: How to express "any additional attributes"? - - ResourceHandle: - required: - - vimConnectionId - - resourceId - type: object - description: > - This type represents the information that allows addressing a virtualised - resource that is used by a VNF instance. Information about the resource - is available from the VIM. - properties: - vimConnectionId: - description: > - Identifier of the VIM connection to manage the resource. This - attribute shall only be supported and present if VNF-related resource - management in direct mode is applicable. The applicable - "VimConnectionInfo" structure, which is referenced by - vimConnectionId, can be obtained from the "vimConnectionInfo" - attribute of the "VnfInstance" structure. - $ref: "#/definitions/Identifier" - resourceProviderId: - description: > - Identifier of the entity responsible for the management of the - resource. This attribute shall only be supported and present when - VNF-related resource management in indirect mode is applicable. The - identification scheme is outside the scope of the present document. - $ref: "#/definitions/Identifier" - resourceId: - description: > - Identifier of the resource in the scope of the VIM or the resource - provider. - $ref: "#/definitions/IdentifierInVim" - vimLevelResourceType: - description: > - Type of the resource in the scope of the VIM or the resource - provider. - type: string - #TODO: Note of Table 4.4.1.7-1 +definitions: + Identifier: + description: > + An identifier with the intention of being globally unique. + type: string - CpProtocolData: - description: > - This type represents network protocol data. - type: object - required: - - layerProtocol - properties: - layerProtocol: - description: > - Identifier of layer(s) and protocol(s). - Permitted values: IP_OVER_ETHERNET. - type: string - enum: - - IP_OVER_ETHERNET - ipOverEthernet: - description: > - Network address data for IP over Ethernet to - assign to the extCP instance. Shall be - present if layerProtocol is equal to - "IP_OVER_ETHERNET", and shall be absent otherwise. - $ref: "#/definitions/IpOverEthernetAddressData" + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + type: string - IpOverEthernetAddressData: - description: > - This type represents network address data for IP over Ethernet. - type: object - properties: - macAddress: - description: > - MAC address. If this attribute is not present, it shall be chosen by the NFV MANO. - $ref: "#/definitions/MacAddress" - ipAddresses: - description: > - List of IP addresses to assign to the CP instance. Each entry - represents IP address data for fixed or dynamic IP address - assignment per subnet. - If this attribute is not present, no IP address shall be assigned. - type: array - items: - type: object - required: - - type - properties: - type: - description: > - The type of the IP addresses. - Permitted values: IPV4, IPV6. - type: string - enum: - - IPV4 - - IPV6 - fixedAddresses: - description: > - Fixed addresses to assign (from the subnet defined by - "subnetId" if provided). - Exactly one of "fixedAddresses", "numDynamicAddresses" or - "ipAddressRange" shall be present. - type: array - items: - $ref: "#/definitions/IpAddress" - numDynamicAddresses: - description: > - Number of dynamic addresses to assign (from the subnet defined - by "subnetId" if provided). - Exactly one of "fixedAddresses", "numDynamicAddresses" or - "ipAddressRange" shall be present. - type: integer - addressRange: - description: > - An IP address range to be used, e.g. in case of egress - connections. - In case this attribute is present, IP addresses from the range - will be used. - type: object - required: - - minAddress - - maxAddress - properties: - minAddress: - description: > - Lowest IP address belonging to the range. - $ref: "#/definitions/IpAddress" - maxAddress: - description: > - Highest IP address belonging to the range. - $ref: "#/definitions/IpAddress" - subnetId: - description: > - Subnet defined by the identifier of the subnet resource in the - VIM. - In case this attribute is present, IP addresses from that - subnet will be assigned; otherwise, IP addresses not bound to - a subnet will be assigned. - $ref: "#/definitions/IdentifierInVim" - - ExtVirtualLinkData: - description: > - This type represents an external VL. It shall comply with the provisions defined in Table 6.5.3.26-1. - type: object - required: - - resourceId - - extCps - properties: - extVirtualLinkId: - description: > - The identifier of the external VL instance, if provided. - $ref: "#/definitions/Identifier" - vimId: - description: > - Identifier of the VIM that manages this resource. This - attribute shall only be supported and present if VNFrelated - resource management in direct mode is applicable. - $ref: "#/definitions/Identifier" - resourceProviderId: - description: > - Identifies the entity responsible for the management of - this resource. - This attribute shall only be supported and present if - VNF-related resource management in indirect mode is - applicable. The identification scheme is outside the - scope of the present document. - $ref: "#/definitions/Identifier" - resourceId: - description: > + nsInstanceId: + description: > + The deleted NS instance identifier. + type: string + + Link: + description: > + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: > + URI of the referenced resource. + type: string + format: url + + DateTime: + description: > + Date-time stamp. + Representation: String formatted according to IETF RFC 3339. + type: string + format: "date-time" + + String: + description: > + This type represents stack of string values + type: string + + KeyValuePairs: + description: > + This type represents a list of key-value pairs. The order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + + IdentifierInVnfd: + description: > + Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. + type: string + + IdentifierInVnf: + description: > + An identifier that is unique for the respective type within a VNF + instance, but may not be globally unique. + type: string + + IdentifierInNsd: + description: > + An identifier that is unique within a NS descriptor. Representation: string of variable + length. + type: string + + IdentifierInPnf: + description: > + Identifier of the CP in the scope of the PNF. + type: string + + IdentifierInNs: + description: > + An identifier that is unique with respect to a NS. + Representation: string of variable length. + type: string + + MacAddress: + description: > + A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons. + type: string + format: MAC + + IpAddress: + description: > + An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal + integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that + consists of groups of zero to four hexadecimal digits, separated by colons. + type: string + format: IP + + IpAddressPrefix: + description: > + An IPV4 or IPV6 address range in CIDR format. For IPV4 address range, refer to IETF + RFC 4632 [12]. For IPV6 address range, refer to IETF RFC 4291 [11]. + type: string + format: CIDR + + IdentifierInVim: + description: > + An identifier maintained by the VIM or other resource provider. It is + expected to be unique within the VIM instance. + type: string + + ProblemDetails: + #SOL005 location: 4.3.5.3-1 + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present document, + to ensure that the response contains additional textual information about + an error. IETF RFC 7807 [19] foresees extensibility of the + "ProblemDetails" type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to define + additional attributes that provide more information about the error. + The description column only provides some explanation of the meaning to + Facilitate understanding of the design. For a full description, see + IETF RFC 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies the + problem type. It is encouraged that the URI provides human-readable + documentation for the problem (e.g. using HTML) when dereferenced. + When this member is not present, its value is assumed to be + "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should not + change from occurrence to occurrence of the problem, except for + purposes of localization. If type is given and other than + "about:blank", this attribute shall also be provided. + A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of the + problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by the origin + server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of the + problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + #TODO: How to express "any additional attributes"? + + ResourceHandle: + required: + - vimConnectionId + - resourceId + type: object + description: > + This type represents the information that allows addressing a virtualised + resource that is used by a VNF instance. Information about the resource + is available from the VIM. + properties: + vimConnectionId: + description: > + Identifier of the VIM connection to manage the resource. This + attribute shall only be supported and present if VNF-related resource + management in direct mode is applicable. The applicable + "VimConnectionInfo" structure, which is referenced by + vimConnectionId, can be obtained from the "vimConnectionInfo" + attribute of the "VnfInstance" structure. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifier of the entity responsible for the management of the + resource. This attribute shall only be supported and present when + VNF-related resource management in indirect mode is applicable. The + identification scheme is outside the scope of the present document. + $ref: "#/definitions/Identifier" + resourceId: + description: > + Identifier of the resource in the scope of the VIM or the resource + provider. + $ref: "#/definitions/IdentifierInVim" + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or the resource + provider. + type: string + #TODO: Note of Table 4.4.1.7-1 + + CpProtocolData: + description: > + This type represents network protocol data. + type: object + required: + - layerProtocol + properties: + layerProtocol: + description: > + Identifier of layer(s) and protocol(s). + Permitted values: IP_OVER_ETHERNET. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + Network address data for IP over Ethernet to + assign to the extCP instance. Shall be + present if layerProtocol is equal to + "IP_OVER_ETHERNET", and shall be absent otherwise. + $ref: "#/definitions/IpOverEthernetAddressData" + + IpOverEthernetAddressData: + description: > + This type represents network address data for IP over Ethernet. + type: object + properties: + macAddress: + description: > + MAC address. If this attribute is not present, it shall be chosen by the NFV MANO. + $ref: "#/definitions/MacAddress" + ipAddresses: + description: > + List of IP addresses to assign to the CP instance. Each entry + represents IP address data for fixed or dynamic IP address + assignment per subnet. + If this attribute is not present, no IP address shall be assigned. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. + Permitted values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + fixedAddresses: + description: > + Fixed addresses to assign (from the subnet defined by + "subnetId" if provided). + Exactly one of "fixedAddresses", "numDynamicAddresses" or + "ipAddressRange" shall be present. + type: array + items: + $ref: "#/definitions/IpAddress" + numDynamicAddresses: + description: > + Number of dynamic addresses to assign (from the subnet defined + by "subnetId" if provided). + Exactly one of "fixedAddresses", "numDynamicAddresses" or + "ipAddressRange" shall be present. + type: integer + addressRange: + description: > + An IP address range to be used, e.g. in case of egress + connections. + In case this attribute is present, IP addresses from the range + will be used. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + Lowest IP address belonging to the range. + $ref: "#/definitions/IpAddress" + maxAddress: + description: > + Highest IP address belonging to the range. + $ref: "#/definitions/IpAddress" + subnetId: + description: > + Subnet defined by the identifier of the subnet resource in the + VIM. + In case this attribute is present, IP addresses from that + subnet will be assigned; otherwise, IP addresses not bound to + a subnet will be assigned. + $ref: "#/definitions/IdentifierInVim" + + ExtVirtualLinkData: + description: > + This type represents an external VL. It shall comply with the provisions defined in Table 6.5.3.26-1. + type: object + required: + - resourceId + - extCps + properties: + extVirtualLinkId: + description: > + The identifier of the external VL instance, if provided. + $ref: "#/definitions/Identifier" + vimId: + description: > + Identifier of the VIM that manages this resource. This + attribute shall only be supported and present if VNFrelated + resource management in direct mode is applicable. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifies the entity responsible for the management of + this resource. + This attribute shall only be supported and present if + VNF-related resource management in indirect mode is + applicable. The identification scheme is outside the + scope of the present document. + $ref: "#/definitions/Identifier" + resourceId: + description: > The identifier of the resource in the scope of the VIM or the resource provider. - $ref: "#/definitions/IdentifierInVim" - extCps: - description: > - External CPs of the VNF to be connected to this external VL. - type: array - items: - $ref: "#/definitions/VnfExtCpData" - extLinkPorts: - description: > - Externally provided link ports to be used to connect - external connection points to this external VL. - type: array - items: - $ref: "#/definitions/ExtLinkPortData" + $ref: "#/definitions/IdentifierInVim" + extCps: + description: > + External CPs of the VNF to be connected to this external VL. + type: array + items: + $ref: "#/definitions/VnfExtCpData" + extLinkPorts: + description: > + Externally provided link ports to be used to connect + external connection points to this external VL. + type: array + items: + $ref: "#/definitions/ExtLinkPortData" + + ExtManagedVirtualLinkData: + description: > + This type represents an externally-managed internal VL. + It shall comply with the provisions defined in Table 6.5.3.27-1. + type: object + required: + - virtualLinkDescId + - resourceId + properties: + extManagedVirtualLinkId: + description: > + The identifier of the externally-managed internal VL + instance, if provided. + $ref: "#/definitions/Identifier" + virtualLinkDescId: + description: > + The identifier of the VLD in the VNFD for this VL. + $ref: "#/definitions/IdentifierInVnfd" + vimId: + description: > + Identifier of the VIMthat manage this resource. This + attribute shall only be supported and present if VNFrelated + resource management in direct mode is applicable. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifies the entity responsible for the management of + this resource. This attribute shall only be supported and present if + VNF-related resource management in indirect mode is + applicable. The identification scheme is outside the + scope of the present document. + $ref: "#/definitions/Identifier" + resourceId: + description: > + The identifier of the resource in the scope of the VIM or + the resource provider. + $ref: "#/definitions/IdentifierInVim" + + VnfExtCpData: + description: > + This type represents configuration information for external CPs created + from a CPD. + type: object + required: + - cpdId + properties: + cpdId: + description: > + The identifier of the CPD in the VNFD. + $ref: "#/definitions/IdentifierInVnfd" + cpConfig: + description: > + List of instance data that need to be configured on the CP instances + created from the respective CPD. + type: array + items: + $ref: "#/definitions/VnfExtCpConfig" + + ExtLinkPortData: + description: > + This type represents an externally provided link port to be used to + connect an external connection point to an external VL. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + Identifier of this link port as provided by the entity that has + created the link port. + $ref: "#/definitions/Identifier" + resourceHandle: + description: > + Reference to the virtualised resource realizing this link port. + $ref: "#/definitions/ResourceHandle" + + VnfExtCpConfig: + description: > + This type represents an externally provided link port or network address + information per instance of an external connection point. In case a link + port is provided, the VNFM shall use that link port when connecting the + external CP to the external VL. In a link port is not provided, the VNFM + shall create a link port on the external VL, and use that link port to + connect the external CP to the external VL. + type: object + properties: + cpInstanceId: + description: > + Identifier of the external CP instance to which this set of + configuration parameters is requested to be applied. + Shall be present if this instance has already been created. + $ref: "#/definitions/IdentifierInVnf" + linkPortId: + description: > + Identifier of a pre-configured link port to which the external CP + will be associated. + The following conditions apply to the attributes "linkPortId" and + "cpProtocolData": + * The "linkPortId" and "cpProtocolData" attributes shall both be + absent for the deletion of an existing external CP instance + addressed by cpInstanceId. + * At least one of these attributes shall be present for a + to-be-created external CP instance or an existing external + CP instance. + * If the "linkPortId" attribute is absent, the VNFM shall create a + link port. + * If the "cpProtocolData" attribute is absent, the "linkPortId" + attribute shall be provided referencing a pre-created link port, + and the VNFM can use means outside the scope of the present + document to obtain the pre-configured address information for the + connection point from the resource representing the link port. + * If both "cpProtocolData" and "linkportId" are provided, the API + consumer shall ensure that the cpProtocolData can be used with the + pre-created link port referenced by "linkPortId". + $ref: "#/definitions/Identifier" + cpProtocolData: + description: > + Parameters for configuring the network protocols on the link port + that connects the CP to a VL. + The following conditions apply to the attributes "linkPortId" and + "cpProtocolData": + * The "linkPortId" and "cpProtocolData" attributes shall both be + absent for the deletion of an existing external CP instance + addressed by cpInstanceId. + * At least one of these attributes shall be present for a + to-be-created external CP instance or an existing external + CP instance. + * If the "linkPortId" attribute is absent, the VNFM shall create a + link port. + * If the "cpProtocolData" attribute is absent, the "linkPortId" + attribute shall be provided referencing a pre-created link port, + and the VNFM can use means outside the scope of the present + document to obtain the pre-configured address information for the + connection point from the resource representing the link port. + * If both "cpProtocolData" and "linkportId" are provided, the API + consumer shall ensure that the cpProtocolData can be used with the + pre-created link port referenced by "linkPortId". + type: array + items: + $ref: "#/definitions/CpProtocolData" - ExtManagedVirtualLinkData: - description: > - This type represents an externally-managed internal VL. - It shall comply with the provisions defined in Table 6.5.3.27-1. - type: object - required: - - virtualLinkDescId - - resourceId - properties: - extManagedVirtualLinkId: - description: > - The identifier of the externally-managed internal VL - instance, if provided. - $ref: "#/definitions/Identifier" - virtualLinkDescId: - description: > - The identifier of the VLD in the VNFD for this VL. - $ref: "#/definitions/IdentifierInVnfd" - vimId: - description: > - Identifier of the VIMthat manage this resource. This - attribute shall only be supported and present if VNFrelated - resource management in direct mode is applicable. - $ref: "#/definitions/Identifier" - resourceProviderId: - description: > - Identifies the entity responsible for the management of - this resource. This attribute shall only be supported and present if - VNF-related resource management in indirect mode is - applicable. The identification scheme is outside the - scope of the present document. - $ref: "#/definitions/Identifier" - resourceId: - description: > - The identifier of the resource in the scope of the VIM or - the resource provider. - $ref: "#/definitions/IdentifierInVim" - - VnfExtCpData: - description: > - This type represents configuration information for external CPs created - from a CPD. - type: object - required: - - cpdId - properties: - cpdId: - description: > - The identifier of the CPD in the VNFD. - $ref: "#/definitions/IdentifierInVnfd" - cpConfig: - description: > - List of instance data that need to be configured on the CP instances - created from the respective CPD. - type: array - items: - $ref: "#/definitions/VnfExtCpConfig" - - ExtLinkPortData: - description: > - This type represents an externally provided link port to be used to - connect an external connection point to an external VL. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - Identifier of this link port as provided by the entity that has - created the link port. - $ref: "#/definitions/Identifier" - resourceHandle: - description: > - Reference to the virtualised resource realizing this link port. - $ref: "#/definitions/ResourceHandle" + PortRange: + description: > + The PortRange data type provides the lower and upper bounds of a range of Internet ports. + It shall comply with the provisions defined in Table 6.5.3.42-1. + type: object + required: + - lowerPort + - upperPort + properties: + lowerPort: + description: > + Identifies the lower bound of the port range. upperPort Integer + type: integer + minimum: 0 + upperPort: + description: > + Identifies the upper bound of the port range. + type: integer + minimum: 0 - VnfExtCpConfig: - description: > - This type represents an externally provided link port or network address - information per instance of an external connection point. In case a link - port is provided, the VNFM shall use that link port when connecting the - external CP to the external VL. In a link port is not provided, the VNFM - shall create a link port on the external VL, and use that link port to - connect the external CP to the external VL. - type: object - properties: - cpInstanceId: - description: > - Identifier of the external CP instance to which this set of - configuration parameters is requested to be applied. - Shall be present if this instance has already been created. - $ref: "#/definitions/IdentifierInVnf" - linkPortId: - description: > - Identifier of a pre-configured link port to which the external CP - will be associated. - The following conditions apply to the attributes "linkPortId" and - "cpProtocolData": - * The "linkPortId" and "cpProtocolData" attributes shall both be - absent for the deletion of an existing external CP instance - addressed by cpInstanceId. - * At least one of these attributes shall be present for a - to-be-created external CP instance or an existing external - CP instance. - * If the "linkPortId" attribute is absent, the VNFM shall create a - link port. - * If the "cpProtocolData" attribute is absent, the "linkPortId" - attribute shall be provided referencing a pre-created link port, - and the VNFM can use means outside the scope of the present - document to obtain the pre-configured address information for the - connection point from the resource representing the link port. - * If both "cpProtocolData" and "linkportId" are provided, the API - consumer shall ensure that the cpProtocolData can be used with the - pre-created link port referenced by "linkPortId". - $ref: "#/definitions/Identifier" - cpProtocolData: - description: > - Parameters for configuring the network protocols on the link port - that connects the CP to a VL. - The following conditions apply to the attributes "linkPortId" and - "cpProtocolData": - * The "linkPortId" and "cpProtocolData" attributes shall both be - absent for the deletion of an existing external CP instance - addressed by cpInstanceId. - * At least one of these attributes shall be present for a - to-be-created external CP instance or an existing external - CP instance. - * If the "linkPortId" attribute is absent, the VNFM shall create a - link port. - * If the "cpProtocolData" attribute is absent, the "linkPortId" - attribute shall be provided referencing a pre-created link port, - and the VNFM can use means outside the scope of the present - document to obtain the pre-configured address information for the - connection point from the resource representing the link port. - * If both "cpProtocolData" and "linkportId" are provided, the API - consumer shall ensure that the cpProtocolData can be used with the - pre-created link port referenced by "linkPortId". - type: array - items: - $ref: "#/definitions/CpProtocolData" - - PortRange: - description: > - The PortRange data type provides the lower and upper bounds of a range of Internet ports. - It shall comply with the provisions defined in Table 6.5.3.42-1. - type: object - required: - - lowerPort - - upperPort - properties: - lowerPort: - description: > - Identifies the lower bound of the port range. upperPort Integer - type: integer - minimum: 0 - upperPort: - description: > - Identifies the upper bound of the port range. - type: integer - minimum: 0 - - Mask: - description: > - The Mask data type identifies the value to be matched for a sequence of - bits at a particular location in a frame. It shall - comply with the provisions defined in Table 6.5.3.41-1. - type: object - required: - - startingPoint - - length - - value - properties: - startingPoint: - description: > - Indicates the offset between the last bit of the source - mac address and the first bit of the sequence of bits - to be matched. - type: integer - length: - description: > - Indicates the number of bits to be matched. - type: integer - value: - description: > - Provide the sequence of bit values to be matched. - type: string + Mask: + description: > + The Mask data type identifies the value to be matched for a sequence of + bits at a particular location in a frame. It shall + comply with the provisions defined in Table 6.5.3.41-1. + type: object + required: + - startingPoint + - length + - value + properties: + startingPoint: + description: > + Indicates the offset between the last bit of the source + mac address and the first bit of the sequence of bits + to be matched. + type: integer + length: + description: > + Indicates the number of bits to be matched. + type: integer + value: + description: > + Provide the sequence of bit values to be matched. + type: string - Uri: - description: > - String formatted according to IETF RFC 3986. - type: string + Uri: + description: > + String formatted according to IETF RFC 3986. + type: string - SubscriptionAuthentication: - type: object - required: - - authType - properties: - authType: - description: > - Defines the types of Authentication / Authorization which the API - consumer is willing to accept when receiving a notification. - Permitted values: - * BASIC: In every HTTP request to the notification endpoint, use - HTTP Basic authentication with the client credentials. - * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the - notification endpoint, use an OAuth 2.0 Bearer token, obtained - using the client credentials grant type. - * TLS_CERT: Every HTTP request to the notification endpoint is sent - over a mutually authenticated TLS session, i.e. not only the - server is authenticated, but also the client is authenticated - during the TLS tunnel setup. - type: array - items: - type: string - enum: - - BASIC - - OAUTH2_CLIENT_CREDENTIALS - - TLS_CERT - paramsBasic: - description: > - Parameters for authentication/authorization using BASIC. - Shall be present if authType is "BASIC" and the contained - information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - userName: - description: > - Username to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - password: - description: > - Password to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - paramsOauth2ClientCredentials: - description: > - Parameters for authentication/authorization using - OAUTH2_CLIENT_CREDENTIALS. - Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the - contained information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - clientId: - description: > - Client identifier to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a subscription shall - not be the same as the clientId and clientPassword that are used - to obtain authorization for API requests. Client credentials may - differ between subscriptions. The value of clientPassword should - be generated by a random process. - type: string - clientPassword: - description: > - Client password to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a subscription shall - not be the same as the clientId and clientPassword that are used - to obtain authorization for API requests. Client credentials may - differ between subscriptions. The value of clientPassword should - be generated by a random process. - type: string - tokenEndpoint: - description: > - The token endpoint from which the access token can be obtained. - Shall be present if it has not been provisioned out of band. - $ref: "#/definitions/Uri" + SubscriptionAuthentication: + type: object + required: + - authType + properties: + authType: + description: > + Defines the types of Authentication / Authorization which the API + consumer is willing to accept when receiving a notification. + Permitted values: + * BASIC: In every HTTP request to the notification endpoint, use + HTTP Basic authentication with the client credentials. + * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the + notification endpoint, use an OAuth 2.0 Bearer token, obtained + using the client credentials grant type. + * TLS_CERT: Every HTTP request to the notification endpoint is sent + over a mutually authenticated TLS session, i.e. not only the + server is authenticated, but also the client is authenticated + during the TLS tunnel setup. + type: array + items: + type: string + enum: + - BASIC + - OAUTH2_CLIENT_CREDENTIALS + - TLS_CERT + paramsBasic: + description: > + Parameters for authentication/authorization using BASIC. + Shall be present if authType is "BASIC" and the contained + information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + userName: + description: > + Username to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + password: + description: > + Password to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + paramsOauth2ClientCredentials: + description: > + Parameters for authentication/authorization using + OAUTH2_CLIENT_CREDENTIALS. + Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the + contained information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + clientId: + description: > + Client identifier to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a subscription shall + not be the same as the clientId and clientPassword that are used + to obtain authorization for API requests. Client credentials may + differ between subscriptions. The value of clientPassword should + be generated by a random process. + type: string + clientPassword: + description: > + Client password to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a subscription shall + not be the same as the clientId and clientPassword that are used + to obtain authorization for API requests. Client credentials may + differ between subscriptions. The value of clientPassword should + be generated by a random process. + type: string + tokenEndpoint: + description: > + The token endpoint from which the access token can be obtained. + Shall be present if it has not been provisioned out of band. + $ref: "#/definitions/Uri" diff --git a/src/SOL005/NSLifecycleManagement/responses/NSLifecycleManagement_resp.yaml b/src/SOL005/NSLifecycleManagement/responses/NSLifecycleManagement_resp.yaml index 6737bf1..e48759d 100644 --- a/src/SOL005/NSLifecycleManagement/responses/NSLifecycleManagement_resp.yaml +++ b/src/SOL005/NSLifecycleManagement/responses/NSLifecycleManagement_resp.yaml @@ -1,190 +1,190 @@ - # Copyright (c) ETSI 2017. - # https://forge.etsi.org/etsi-forge-copyright-notice.txt - - responses: - 202-with-Location: - description: > - 202 Accepted - - The request was accepted for processing, but the processing has not - been completed. - - The response body shall be empty. - - The HTTP response shall include a "Location" HTTP - header that contains the URI of the newly-created - "NS lifecycle operation occurrence" resource - corresponding to the operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" - 202-with-Location-empty: - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "NS LCM operation occurrence" resource corresponding to the - operation. - The response body shall be empty. - headers: - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - 409-another-lcm-operation-ongoing: - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that another LCM operation is - ongoing. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-inconsistent-state: - description: > - Conflict - - Another request is in progress that prohibits the fulfilment of - the current request, or the current resource state is inconsistent - with the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-INSTANTIATED: - description: > - Conflict - - 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 NS LCM - operation occurrence is not in FAILED_TEMP state, or - another error handling action is starting, such as retry or fail. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-not-FAILED_TEMP: - description: > - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is - not in FAILED_TEMP state, or another error handling action is starting, - such as rollback or fail. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-NOT-INSTANTIATED: - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is in - NOT-INSTANTIATED state, or that another lifecycle management operation - is ongoing. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +responses: + 202-with-Location: + description: > + 202 Accepted + + The request was accepted for processing, but the processing has not + been completed. + + The response body shall be empty. + + The HTTP response shall include a "Location" HTTP + header that contains the URI of the newly-created + "NS lifecycle operation occurrence" resource + corresponding to the operation. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" + 202-with-Location-empty: + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "NS LCM operation occurrence" resource corresponding to the + operation. + The response body shall be empty. + headers: + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + 409-another-lcm-operation-ongoing: + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that another LCM operation is + ongoing. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-inconsistent-state: + description: > + Conflict + + Another request is in progress that prohibits the fulfilment of + the current request, or the current resource state is inconsistent + with the request. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-INSTANTIATED: + description: > + Conflict + + 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 NS LCM + operation occurrence is not in FAILED_TEMP state, or + another error handling action is starting, such as retry or fail. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-not-FAILED_TEMP: + description: > + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that the NS instance resource is + not in FAILED_TEMP state, or another error handling action is starting, + such as rollback or fail. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-NOT-INSTANTIATED: + description: > + Conflict + + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that the NS instance resource is in + NOT-INSTANTIATED state, or that another lifecycle management operation + is ongoing. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL005/NSLifecycleManagement/responses/SOL005_resp.yaml b/src/SOL005/NSLifecycleManagement/responses/SOL005_resp.yaml index cbcd81a..282ece1 100644 --- a/src/SOL005/NSLifecycleManagement/responses/SOL005_resp.yaml +++ b/src/SOL005/NSLifecycleManagement/responses/SOL005_resp.yaml @@ -1,13 +1,13 @@ - # Copyright (c) ETSI 2017. - # https://forge.etsi.org/etsi-forge-copyright-notice.txt - responses: - 202: - description: > - Accepted +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +responses: + 202: + description: > + Accepted - The request was accepted for processing, but processing has not - been completed. The response shall have an empty payload body. - headers: + The request was accepted for processing, but processing has not + been completed. The response shall have an empty payload body. + headers: Location: description: The resource URI of the created NS instance type: string @@ -20,397 +20,397 @@ type: string maximum: 1 minimum: 0 - 202-with-Location: - description: > - Accepted + 202-with-Location: + description: > + Accepted - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "NS LCM operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - 303: - description: > - See Other - A subscription with the same callbackURI and the same filter already - exists and the policy of the VNFM is to not create redundant - subscriptions. - The HTTP response shall include a "Location" HTTP header that contains - the resource URI of the existing subscription resource. - The response body shall be empty. - 400: - description: > - Bad Request + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "NS LCM operation occurrence" resource corresponding to the + operation. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + 303: + description: > + See Other + A subscription with the same callbackURI and the same filter already + exists and the policy of the VNFM is to not create redundant + subscriptions. + The HTTP response shall include a "Location" HTTP header that contains + the resource URI of the existing subscription resource. + The response body shall be empty. + 400: + description: > + Bad Request - Error: Invalid attribute-based filtering parameters. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute should convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 400-attr-based-filtering-error: - description: > - Bad Request - Invalid attribute-based filtering parameters or Invalid attribute - selector. - It fhe request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided, - and should include in the "detail" attribute more information about - the source of the problem. - If the request contains a malformed access token, the API producer - should respond with this response. The details of the error shall - be returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be - provided. - If there is an application error related to the client's input that - cannot be easily mapped to any other HTTP response code ("catch all - error"), the API producer shall respond with this response code.The - "ProblemDetails" structure shall be provided, and shall include in - the "detail" attribute more information about the source of the - problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 400-attr-selector: - description: > - Error: Invalid attribute selector. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute should convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 401: - description: > - Unauthorized - If the request contains no access token even though one is - required, or if the request contains an authorization token that - is invalid (e.g. expired or revoked), the API producer should - respond with this response. The details of the error shall be - returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails - structure may be provided. - headers: - Content-Type: - type: string - description: The MIME type of the body of the response. - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 403: - description: > - Forbidden - If the API consumer is not allowed to perform a particular request - to a particular resource, the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided. - It should include in the "detail" attribute information about the - source of the problem, and may indicate how to solve it. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - The "ProblemDetails" structure may be provided, - including in the "detail" attribute information about the source - of the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-resource-not-exists: - description: > - Not Found - Error: The API producer did not find a current representation for the - target resource or is not willing to disclose that one exists. - Specifically in case of this task resource, the response code 404 shall - also returned if the task is not supported for the NS instance - represented by the parent resource, which means that the task resource - consequently does not exist. - In this case, the response body shall be present, and shall contain a - ProblemDetails structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-resource-not-exists-NS-LCM: - description: > - Not Found - Error: The API producer did not find a current representation for the - target resource or is not willing to disclose that one exists. - Specifically in case of this task resource, the response code 404 shall - also be returned if the task is not supported for the NS LCM operation - occurrence represented by the parent resource, which means that the task - resource consequently does not exist. - In this case, the response body shall be present, and shall contain a - ProblemDetails structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-not-suported: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - Specifically in case of this task resource, the reason can also be that - the task is not supported for the NS instance represented by the parent - resource, and that the task resource consequently does not exist. - The "ProblemDetails" structure may be provided, including in the - "detail" attribute information about the sourceof the problem, e.g. a - wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-not-suported-NS-LCM: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - Specifically in case of this task resource, the reason can also be that - the task is not supported for the NS LCM operation occurrence - represented by the parent resource, and that the task resource - consequently does not exist. - The "ProblemDetails" structure may be provided, including in the - "detail" attribute information about the source of the problem, e.g. a - wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-not-found: - description: > - Not Found - Error: The API producer did not find a current - representation for the target resource or is not willing to - disclose that one exists. - The general cause for this error and its handling is - specified in clause 4.3.5.4, including rules for the - presence of the response body. - Specifically, in case of this task resource, the reason - can also be that the task is not supported for the NS - LCM operation occurrence represented by the parent - source, and that the task resource consequently - does not exist. - In this case, the response body shall be present, and - shall contain a ProblemDetails structure, in which the - "detail" attribute shall convey more information about - the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 405: - description: > - Method Not Allowed - If a particular HTTP method is not supported for a particular - resource, the API producer shall respond with this response code. - The "ProblemDetails" structure may be omitted in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 406: - description: > - Not Acceptable - If the Accept HTTP header does not contain at least one name of - a content type that is acceptable to the API producer, the API - producer shall respond with this response code. The - ProblemDetails structure may be omitted in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 412: - description: > - Precondition Failed - A precondition given in an HTTP request header is not fulfilled. - Typically, this is due to an ETag mismatch, indicating that the - resource was modified by another entity. The response body should - contain a ProblemDetails structure, in which the "detail" attribute - should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 416: - description: > - Requested Range Not Satisfiable - This code is returned if the requested byte range in the - Range HTTP header is not present in the requested resource. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 422: - description: > - Unprocessable Entity - If the payload body of a request contains syntactically correct - data (e.g. well-formed JSON) but the data cannot be processed - (e.g. because it fails validation against a schema), the API - producer shall respond with this response code. The - "ProblemDetails" structure shall be provided, and should include - in the "detail" attribute more information about the source of the - problem. - NOTE 2: This error response code is only applicable for methods - that have a request body. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 500: - description: > - Internal Server Error - If there is an application error not related to the client's input - that cannot be easily mapped to any other HTTP response code - ("catch all error"), the API producer shall respond withthis - response code. The ProblemDetails structure shall be provided, - and shall include in the "detail" attribute more information about - the source of the problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 503: - description: > - Service Unavailable - If the API producer encounters an internal overload situation of - itself or of a system it relies on, it should respond with this - response code, following the provisions in IETF RFC 7231 [13] for - the use of the Retry-After HTTP header and for the alternative - to refuse the connection. The "ProblemDetails" structure may be omitted. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file + Error: Invalid attribute-based filtering parameters. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute should convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 400-attr-based-filtering-error: + description: > + Bad Request + Invalid attribute-based filtering parameters or Invalid attribute + selector. + It fhe request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, + and should include in the "detail" attribute more information about + the source of the problem. + If the request contains a malformed access token, the API producer + should respond with this response. The details of the error shall + be returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be + provided. + If there is an application error related to the client's input that + cannot be easily mapped to any other HTTP response code ("catch all + error"), the API producer shall respond with this response code.The + "ProblemDetails" structure shall be provided, and shall include in + the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 400-attr-selector: + description: > + Error: Invalid attribute selector. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute should convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 401: + description: > + Unauthorized + If the request contains no access token even though one is + required, or if the request contains an authorization token that + is invalid (e.g. expired or revoked), the API producer should + respond with this response. The details of the error shall be + returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails + structure may be provided. + headers: + Content-Type: + type: string + description: The MIME type of the body of the response. + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 403: + description: > + Forbidden + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. + It should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source + of the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-resource-not-exists: + description: > + Not Found + Error: The API producer did not find a current representation for the + target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 shall + also returned if the task is not supported for the NS instance + represented by the parent resource, which means that the task resource + consequently does not exist. + In this case, the response body shall be present, and shall contain a + ProblemDetails structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-resource-not-exists-NS-LCM: + description: > + Not Found + Error: The API producer did not find a current representation for the + target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 shall + also be returned if the task is not supported for the NS LCM operation + occurrence represented by the parent resource, which means that the task + resource consequently does not exist. + In this case, the response body shall be present, and shall contain a + ProblemDetails structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-not-suported: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + Specifically in case of this task resource, the reason can also be that + the task is not supported for the NS instance represented by the parent + resource, and that the task resource consequently does not exist. + The "ProblemDetails" structure may be provided, including in the + "detail" attribute information about the sourceof the problem, e.g. a + wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-not-suported-NS-LCM: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + Specifically in case of this task resource, the reason can also be that + the task is not supported for the NS LCM operation occurrence + represented by the parent resource, and that the task resource + consequently does not exist. + The "ProblemDetails" structure may be provided, including in the + "detail" attribute information about the source of the problem, e.g. a + wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-not-found: + description: > + Not Found + Error: The API producer did not find a current + representation for the target resource or is not willing to + disclose that one exists. + The general cause for this error and its handling is + specified in clause 4.3.5.4, including rules for the + presence of the response body. + Specifically, in case of this task resource, the reason + can also be that the task is not supported for the NS + LCM operation occurrence represented by the parent + source, and that the task resource consequently + does not exist. + In this case, the response body shall be present, and + shall contain a ProblemDetails structure, in which the + "detail" attribute shall convey more information about + the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 405: + description: > + Method Not Allowed + If a particular HTTP method is not supported for a particular + resource, the API producer shall respond with this response code. + The "ProblemDetails" structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 406: + description: > + Not Acceptable + If the Accept HTTP header does not contain at least one name of + a content type that is acceptable to the API producer, the API + producer shall respond with this response code. The + ProblemDetails structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 412: + description: > + Precondition Failed + A precondition given in an HTTP request header is not fulfilled. + Typically, this is due to an ETag mismatch, indicating that the + resource was modified by another entity. The response body should + contain a ProblemDetails structure, in which the "detail" attribute + should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 416: + description: > + Requested Range Not Satisfiable + This code is returned if the requested byte range in the + Range HTTP header is not present in the requested resource. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 422: + description: > + Unprocessable Entity + If the payload body of a request contains syntactically correct + data (e.g. well-formed JSON) but the data cannot be processed + (e.g. because it fails validation against a schema), the API + producer shall respond with this response code. The + "ProblemDetails" structure shall be provided, and should include + in the "detail" attribute more information about the source of the + problem. + NOTE 2: This error response code is only applicable for methods + that have a request body. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 500: + description: > + Internal Server Error + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code + ("catch all error"), the API producer shall respond withthis + response code. The ProblemDetails structure shall be provided, + and shall include in the "detail" attribute more information about + the source of the problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 503: + description: > + Service Unavailable + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the Retry-After HTTP header and for the alternative + to refuse the connection. The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml index bea3ace..029f41c 100644 --- a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml +++ b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml @@ -13,22 +13,22 @@ info: license: name: "ETSI Forge copyright notice" url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - contact: + contact: name: "NFV-SOL WG" externalDocs: description: ETSI GS NFV-SOL 005 V2.4.1 - url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf + url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf basePath: "/nspm/v1" schemes: - https consumes: - "application/json" produces: - - "application/json" + - "application/json" paths: -############################################################################### -# PM Jobs # -############################################################################### + ############################################################################### + # PM Jobs # + ############################################################################### '/pm_jobs': #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.2 post: @@ -39,69 +39,81 @@ paths: Tables 7.4.2.3.1-1 and 7.4.2.3.1-2 for URI query parameters, request and response data structures, and response codes. parameters: - - name: "CreatePmJobRequest" - in: "body" - required: true - schema: - type: "object" - required: - - "CreatePmJobRequest" - properties: - CreatePmJobRequest: - $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/CreatePmJobRequest" - description: > - The VNF creation parameters. - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - responses: + - name: CreatePmJobRequest + in: body + required: true + schema: + type: object + required: + - CreatePmJobRequest + properties: + CreatePmJobRequest: + $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/CreatePmJobRequest" + description: > + The VNF creation parameters. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + responses: 201: - description: > + description: > 201 Created - + The PM job was created successfully. The response body shall contain a representation of the created PM job resource, as defined in clause 7.5.2.7. The HTTP response shall include a "Location" HTTP header that points to the created PM job resource. schema: - type: "object" + type: object properties: PmJob: $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/PmJob" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -119,55 +131,62 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" get: summary: Query PM jobs. - description: > - "The client can use this method to retrieve information about PM jobs" + description: > + The client can use this method to retrieve information about PM jobs. parameters: - - name: "filter" - in: "query" + - name: filter + in: query required: false - type: "string" - description: > - "Attribute-based filtering parameters according to clause 4.3.2. + type: string + description: > + Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. All attribute names that appear in the PmJob and in data types referenced from it - shall be supported in attribute-based filtering parameters" - - name: "all_fields" - in: "query" + shall be supported in attribute-based filtering parameters. + - name: all_fields + in: query required: false - type: "string" - description: > - "Include all complex attributes in the response. See clause 4.3.3 for details. The - NFVO shall support this parameter" - - name: "include" - in: "query" + type: string + description: > + Include all complex attributes in the response. See clause 4.3.3 for details. The + NFVO shall support this parameter. + - name: include + in: query required: false - type: "string" - description: > - "Complex attributes to be included into the response. See clause 4.3.3 for details. The - NFVO should support this parameter" - - name: "exclude" - in: "query" + type: string + description: > + Complex attributes to be included into the response. See clause 4.3.3 for details. The + NFVO should support this parameter. + - name: exclude + in: query required: false - type: "string" - description: > - "Complex attributes to be excluded from the response. See clause 4.3.3 for details. - The NFVO should support this parameter." - - name: "exclude_default" - in: "query" + type: string + description: > + Complex attributes to be excluded from the response. See clause 4.3.3 for details. + The NFVO should support this parameter. + - name: exclude_default + in: query required: false - type: "string" - description: > - "Indicates to exclude the following complex attributes from the response. + type: string + description: > + Indicates to exclude the following complex attributes from the response. See clause 4.3.3 for details. The NFVO shall support this parameter. The following attributes shall be excluded from the PmJob structure in the response body if this parameter is provided, or none of the parameters "all_fields," "fields", "exclude_fields", "exclude_default" are provided: - reports." + reports. + - name: nextpage_opaque_marker + description: > + Marker to obtain the next page of a paged response. Shall be supported by the NFVO + if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. + in: query + required: false + type: string - name: Accept description: > Content-Types that are acceptable for the response. @@ -188,15 +207,21 @@ paths: Reference: IETF RFC 7231 in: header required: true - type: string + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > 200 OK - + Information about zero or more PM jobs was queried successfully. The response body shall contain representations of - zero or more PM jobs, as defined in clause 7.5.2.7 + zero or more PM jobs, as defined in clause 7.5.2.7. headers: Content-Type: description: The MIME type of the body of the response. @@ -204,19 +229,31 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + Link: + description: > + Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. + type: string + maximum: 1 + minimum: 0 schema: type: array items: properties: PmJob: - $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/PmJob" + $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/PmJob" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -231,10 +268,10 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual PM job # -############################################################################### + + ############################################################################### + # Individual PM job # + ############################################################################### '/pm_jobs/{pmJobId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.3 parameters: @@ -255,14 +292,20 @@ paths: - name: Accept description: > Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string - name: Authorization description: > The authorization token for the request. - Reference: IETF RFC 7235 + Reference: IETF RFC 7235. + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. in: header required: true type: string @@ -270,29 +313,35 @@ paths: 200: description: > 200 OK - + Information about an individual PM job was queried successfully. The response body shall contain a representation of the PM job resource, as defined in clause 7.5.2.7. schema: - type: "object" + type: object properties: PmJob: $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/PmJob" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -319,22 +368,34 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: - description: > + description: > 204 No Content - + The PM job was deleted successfully. The response body shall be empty. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -350,9 +411,9 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Individual performance report # -############################################################################### + ############################################################################### + # Individual performance report # + ############################################################################### '/pm_jobs/{pmJobId}/reports/{reportId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.4 parameters: @@ -377,14 +438,20 @@ paths: - name: Accept description: > Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string - name: Authorization description: > The authorization token for the request. - Reference: IETF RFC 7235 + Reference: IETF RFC 7235. + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. in: header required: true type: string @@ -398,24 +465,30 @@ paths: the performance report resource, as defined in clause 7.5.2.10. schema: - type: "object" + type: object properties: PerformanceReport: $ref: "definitions/NSPerfomananceManagement_def.yaml#/definitions/PerformanceReport" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -431,58 +504,64 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Thresholds # -############################################################################### + ############################################################################### + # Thresholds # + ############################################################################### '/thresholds': #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.5 post: summary: Create a threshold. - description: > + description: > The POST method can be used by the client to create a threshold. - + This method shall follow the provisions specified in the table 7.4.5.3.1-2 for URI query parameters, request and response data structures, and response codes. parameters: - - name: "CreateThresholdRequest" - in: "body" - required: true - schema: - type: "object" - required: - - "CreateThresholdRequest" - properties: - CreateThresholdRequest: - $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/CreateThresholdRequest" - description: > - Request parameters to create a threshold resource. - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string + - name: CreateThresholdRequest + in: body + required: true + schema: + type: object + required: + - CreateThresholdRequest + properties: + CreateThresholdRequest: + $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/CreateThresholdRequest" + description: > + Request parameters to create a threshold resource. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 201: description: > 201 Created - + A threshold was created successfully. The response body shall contain a representation of the created threshold resource, as defined in clause 7.5.2.9. @@ -490,25 +569,31 @@ paths: header that contains the resource URI of the created threshold resource. schema: - type: "object" + type: object properties: Threshold: $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/Threshold" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -524,20 +609,27 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" get: - summary: Query thresholds. + summary: Query thresholds. description: > The client can use this method to query information about thresholds. parameters: - - name: "filter" - in: "query" + - name: filter + in: query required: false - type: "string" - description: > + type: string + description: > Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. All attribute names that appear in the Thresholds data type and in data types - referenced from it shall be supported in attribute-based filtering parameters. + referenced from it shall be supported in attribute-based filtering parameters. + - name: nextpage_opaque_marker + in: query + required: false + type: string + description: > + Marker to obtain the next page of a paged response. Shall be supported by the NFVO + if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. - name: Accept description: > Content-Types that are acceptable for the response. @@ -552,12 +644,17 @@ paths: in: header required: true type: string - + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > 200 OK - + Information about zero or more thresholds was queried successfully. The response body shall contain representations of zero or more thresholds, as defined in clause 7.5.2.9. @@ -568,13 +665,25 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + Link: + description: > + Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. + type: string + maximum: 1 + minimum: 0 schema: type: array items: @@ -595,13 +704,13 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual threshold # -############################################################################### + + ############################################################################### + # Individual threshold # + ############################################################################### '/thresholds/{thresholdId}': - #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.6 - parameters: + #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.6 + parameters: - name: thresholdId description: > Identifier of the threshold. @@ -634,33 +743,45 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > 200 OK - + Information about an individual threshold was queried successfully. The response body shall contain a representation of the threshold, as defined in clause 7.5.2.9. schema: - type: "object" + type: object properties: Threshold: $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/Threshold" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -694,22 +815,34 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: - description: > + description: > 204 No Content - + The threshold was deleted successfully. The response body shall be empty. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -724,9 +857,9 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Subscriptions # -############################################################################### + ############################################################################### + # Subscriptions # + ############################################################################### '/subscriptions': #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.7 post: @@ -742,73 +875,85 @@ paths: to not create a duplicate subscription resource (in which case it shall return a "303 See Other" response code referencing the existing subscription resource with the same filter and callbackUri) parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "PmSubscriptionRequest" - properties: - PmSubscriptionRequest: - $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/PmSubscriptionRequest" - description: > - Details of the subscription to be created. + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string + - name: body + in: body + required: true + schema: + type: object + required: + - PmSubscriptionRequest + properties: + PmSubscriptionRequest: + $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/PmSubscriptionRequest" + description: > + Details of the subscription to be created. responses: 201: description: > 201 Created - + The subscription was created successfully. A representation of the created subscription resource shall be returned in the response body, as defined in clause 7.5.2.3. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource. schema: - type: "object" + type:object properties: PmSubscription: $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/PmSubscription" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. maximum: 1 - minimum: 1 + minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 303: - $ref: "responses/SOL005_resp.yaml#/responses/303" + $ref: "responses/SOL005_resp.yaml#/responses/303" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -824,24 +969,31 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" get: - summary: Query PM related subscriptions. + summary: Query PM related subscriptions. description: > The client can use this method to query the list of active subscriptions to Performance management notifications subscribed by the client. This method shall follow the provisions specified in the Tables 7.4.7.3.2-1 and 7.4.7.3.2-2 for URI query parameters, request and response data structures, and response codes. parameters: - - name: "filter" - in: "query" + - name: filter + in: query required: false - type: "string" - description: > + type: string + description: > Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. All attribute names that appear in the PmSubscription and in data types referenced from it shall be supported in attribute-based filtering - parameters. + parameters. + - name: nextpage_opaque_marker + in: query + required: false + type: string + description: > + Marker to obtain the next page of a paged response. Shall be supported by the NFVO + if the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. - name: Accept description: > Content-Types that are acceptable for the response. @@ -856,11 +1008,17 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > 200 OK - + The list of subscriptions was queried successfully. The response body shall contain the representations of all active subscriptions of the functional block that @@ -872,13 +1030,25 @@ paths: maximum: 1 minimum: 1 WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + Link: + description: > + Reference to other resources. Used for paging in the present document, see clause 4.7.2.1. + type: string + maximum: 1 + minimum: 0 schema: type: array items: @@ -899,9 +1069,9 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Individual subscription # -############################################################################### + ############################################################################### + # Individual subscription # + ############################################################################### '/subscriptions/{subscriptionId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.8 parameters: @@ -936,34 +1106,46 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 200: description: > 200 OK - + The subscription was read successfully. The response body shall contain a representation of the subscription resource, as defined in clause 7.5.2.3. schema: - type: "object" + type: object properties: PmSubscription: $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/PmSubscription" headers: Content-Type: - type: "string" + type: string description: > The MIME type of the body of the response.This header field shall be present if the response has a non-empty message body. WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -979,7 +1161,7 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" delete: - summary: Terminate a subscription. + summary: Terminate a subscription. description: > This method terminates an individual subscription. This method shall follow the provisions specified in the @@ -1000,22 +1182,34 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: - description: > + description: > 204 No Content - + The subscription resource was deleted successfully. The response body shall be empty. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -1030,12 +1224,12 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -################################################################################## -# Notification endpoint # -# Dummy URI is used for testing. # -# In real, resource URI is provided by the client when creating the subscription.# -################################################################################## + + ################################################################################## + # Notification endpoint # + # Dummy URI is used for testing. # + # In real, resource URI is provided by the client when creating the subscription.# + ################################################################################## '/URI_is_provided_by_the_client_when_creating_the_subscription-PerformanceInformationAvailableNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.9 post: @@ -1076,32 +1270,44 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + '/URI_is_provided_by_the_client_when_creating_the_subscription-ThresholdCrossedNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.9 post: @@ -1111,7 +1317,7 @@ paths: This method shall follow the provisions specified in the Tables 7.4.9.3.1-1 and 7.4.9.3.1-2 for URI query parameters, - parameters: + parameters: - name: ThresholdCrossedNotification description: > Notification about threshold crossing. @@ -1120,7 +1326,7 @@ paths: schema: properties: ThresholdCrossedNotification: - $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/ThresholdCrossedNotification" + $ref: "definitions/SOL005NSPerfomananceManagement_def.yaml#/definitions/ThresholdCrossedNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -1142,32 +1348,44 @@ paths: in: header required: true type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + get: summary: Test the notification endpoint description: > @@ -1191,28 +1409,40 @@ paths: in: header required: false type: string + - name: Version + description: > + Version of the API requested to use when responding to this request. + in: header + required: true + type: string responses: 204: description: > 204 No Content - + The notification endpoint was tested successfully. The response body shall be empty. headers: WWW-Authenticate: - type: "string" + type: string description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: diff --git a/src/SOL005/NSPerformanceManagement/definitions/NSPerfomananceManagement_def.yaml b/src/SOL005/NSPerformanceManagement/definitions/NSPerfomananceManagement_def.yaml index 8acb95f..7f28da3 100644 --- a/src/SOL005/NSPerformanceManagement/definitions/NSPerfomananceManagement_def.yaml +++ b/src/SOL005/NSPerformanceManagement/definitions/NSPerfomananceManagement_def.yaml @@ -18,12 +18,12 @@ definitions: type: array items: type: object - required: + required: - objectType - objectInstanceId - performanceMetric - performanceValue - properties: + properties: objectType: description: > Defines the object type for which performance @@ -31,7 +31,7 @@ definitions: shall be set to the nsdId of the NS instance to which the performance information relates. type: string - objectInstanceId: + objectInstanceId: description: > The object instance for which the performance metric is reported. @@ -46,9 +46,9 @@ definitions: description: > List of performance values with associated timestamp. type: array - items: + items: type: object - required: + required: - timeStamp - performanceValue properties: diff --git a/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml b/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml index 5e0d8c1..e435df1 100644 --- a/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml +++ b/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml @@ -6,20 +6,20 @@ definitions: type: object required: - objectInstanceIds - - criteria + - criteria properties: objectInstanceIds: description: > Identifiers of the NS instances for which performance information is requested to be collected. type: "array" - items: + items: $ref: "SOL005_def.yaml#/definitions/Identifier" criteria: description: > Criteria of the collection of performance information. $ref: "#/definitions/PmJobCriteria" - + PmJobCriteria: description: > This type represents collection criteria for PM jobs. @@ -27,7 +27,7 @@ definitions: type: object required: - collectionPeriod - - reportingPeriod + - reportingPeriod properties: performanceMetric: description: > @@ -36,7 +36,7 @@ definitions: of the two attributes (performance metric or group) shall be present. type: "array" - items: + items: $ref: "SOL005_def.yaml#/definitions/String" performanceMetricGroup: description: > @@ -47,8 +47,8 @@ definitions: attributes (performance metric or group) shall be present. type: "array" - items: - $ref: "SOL005_def.yaml#/definitions/String" + items: + $ref: "SOL005_def.yaml#/definitions/String" collectionPeriod: description: > Specifies the periodicity at which the producer @@ -62,7 +62,7 @@ definitions: supported depends on the capability of the producing entity. type: integer minimum: 0 - default: 0 + default: 0 reportingPeriod: description: > Specifies the periodicity at which the producer @@ -76,7 +76,7 @@ definitions: supported depends on the capability of the producing entity. type: integer minimum: 0 - default: 0 + default: 0 reportingBoundary: description: > Identifies a time boundary after which the @@ -92,7 +92,7 @@ definitions: required: - id - objectInstanceIds - - criteria + - criteria properties: id: description: > @@ -133,7 +133,7 @@ definitions: fileSize: description: > The size of the report file in bytes, if known. - type: integer + type: integer _links: description: > Links for this resource. @@ -152,9 +152,9 @@ definitions: collected. Shall be present if the NS instance information is accessible as a resource. type: array - items: + items: $ref: "SOL005_def.yaml#/definitions/Link" - + CreateThresholdRequest: description: > This type represents a request to create a threshold. @@ -162,7 +162,7 @@ definitions: required: - objectInstanceId - criteria - properties: + properties: objectInstanceId: description: > Identifier of the NS instance associated with this threshold. @@ -171,17 +171,17 @@ definitions: description: > Criteria that define this threshold. $ref: "#/definitions/ThresholdCriteria" - + Threshold: description: > This type represents a threshold. type: object - required: + required: - id - objectInstanceId - criteria - _links - properties: + properties: id: description: > Identifier of this threshold resource. @@ -198,28 +198,28 @@ definitions: description: > Links for this resource. type: object - required: + required: - self - properties: + properties: self: description: > URI of this resource. $ref: "SOL005_def.yaml#/definitions/Link" - object: + object: description: > Link to a resource representing the NS instance for which performance information is collected. Shall be present if the NS instance information is accessible as a resource. - + ThresholdCriteria: description: > This type represents criteria that define a threshold. type: object - required: + required: - performanceMetric - thresholdType - properties: + properties: performanceMetric: description: > Defines the performance metric associated with the @@ -242,10 +242,10 @@ definitions: Details of a simple threshold. Shall be present if thresholdType="SIMPLE". type: object - required: + required: - thresholdValue - hysteresis - properties: + properties: thresholdValue: description: > The threshold value. Shall be represented as a floating point @@ -266,12 +266,12 @@ definitions: value for this attribute (e.g. override the value or reject the request). type: integer - + PmSubscriptionRequest: description: > This type represents a subscription request. type: object - required: + required: - callbackUri properties: filter: @@ -293,7 +293,7 @@ definitions: This attribute shall only be present if the subscriber requires authorization of notifications.. $ref: "SOL005_def.yaml#/definitions/SubscriptionAuthentication" - + PmNotificationsFilter: description: > This type represents a filter that can be used to subscribe for @@ -305,7 +305,7 @@ definitions: If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical "or" between the values of one filter attribute). type: object - properties: + properties: nsInstanceSubscriptionFilter: description: > Filter criteria to select NS instances about which to notify. @@ -329,11 +329,11 @@ definitions: description: > This type represents a subscription. type: object - required: + required: - id - callbackUri - _links - properties: + properties: id: description: > Identifier that identifies the subscription. @@ -360,7 +360,7 @@ definitions: description: > URI of this resource. $ref: "SOL005_def.yaml#/definitions/Link" - + Version: description: > Software version of the VNF. This is @@ -390,7 +390,7 @@ definitions: type: string Link: type: "object" - + PerformanceInformationAvailableNotification: description: > This notification informs the receiver that performance information is available. @@ -428,7 +428,7 @@ definitions: objectInstanceId: description: > Identifier that identifies a NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" _links: description: > Links to resources related to this notification. @@ -504,15 +504,15 @@ definitions: thresholdId: description: > Identifier of the threshold which has been crossed. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" crossingDirection: description: > An indication of whether the threshold was crossed in upward or downward direction. - $ref: "#/definitions/CrossingDirectionType" + $ref: "#/definitions/CrossingDirectionType" objectInstanceId: description: > Identifier that identifies a NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" performanceMetric: description: > Performance metric associated with the threshold. @@ -520,7 +520,7 @@ definitions: performanceValue: description: > Value of the metric that resulted in threshold crossing. See note. - type: object + type: object _links: description: > Links to resources related to this notification. @@ -545,8 +545,8 @@ definitions: description: > Link to the resource that represents the threshold that was crossed. - $ref: "SOL005_def.yaml#/definitions/Link" - + $ref: "SOL005_def.yaml#/definitions/Link" + CrossingDirectionType: description: > The enumeration CrossingDirectionType shall comply with the provisions. diff --git a/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml b/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml index 28025f0..d5e5074 100644 --- a/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml @@ -1,236 +1,236 @@ - definitions: - Identifier: - description: > - An identifier with the intention of being globally unique. - type: string - - Link: - description: > - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: > - URI of the referenced resource. - type: string - format: url - - DateTime: - description: > - Date-time stamp. - Representation: String formatted according to IETF RFC 3339. - type: string - format: "date-time" - - String: - description: > - This type represents stack of string values - type: string +definitions: + Identifier: + description: > + An identifier with the intention of being globally unique. + type: string - Object: - description: > - This type represents stack of object values - type: object - - KeyValuePairs: - description: > - This type represents a list of key-value pairs. The order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - - Uri: - description: > - String formatted according to IETF RFC 3986. - type: string - - ProblemDetails: - #SOL005 location: 4.3.5.3-1 - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present document, - to ensure that the response contains additional textual information about - an error. IETF RFC 7807 [19] foresees extensibility of the - "ProblemDetails" type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to define - additional attributes that provide more information about the error. - The description column only provides some explanation of the meaning to - Facilitate understanding of the design. For a full description, see - IETF RFC 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies the - problem type. It is encouraged that the URI provides human-readable - documentation for the problem (e.g. using HTML) when dereferenced. - When this member is not present, its value is assumed to be - "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should not - change from occurrence to occurrence of the problem, except for - purposes of localization. If type is given and other than - "about:blank", this attribute shall also be provided. - A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of the - problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by the origin - server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of the - problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - IdentifierInVnfd: - description: > - Identifier of the software image. - type: string - - NSInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match NS instances. - type: object - properties: - nsdIds: - description: > - If present, match NS instances that were created - based on a NSD identified by one of the nsdId - values listed in this attribute. - type: array - items: - $ref: "#/definitions/Identifier" - vnfdIds: - description: > - If present, match NS instances that contain VNF - instances that were created based on a VNFD - identified by one of the vnfdId values listed in - this attribute. - type: array - items: - $ref: "#/definitions/Identifier" - pnfdIds: - description: > - If present, match NS instances that contain - PNFs that are represented by a PNFD identified - by one of the pnfdId values listed in this - attribute. - type: array - items: - $ref: "#/definitions/Identifier" - nsInstanceIds: - description: > - If present, match NS instances with an instance - identifier listed in this attribute. - type: array - items: - $ref: "#/definitions/Identifier" - nsInstanceNames: - description: > - If present, match NS instances with a NS - Instance Name listed in this attribute. - type: array - items: - $ref: "#/definitions/String" - - SubscriptionAuthentication: - type: object - required: - - authType - properties: - authType: - description: > - Defines the types of Authentication / Authorization which the API - consumer is willing to accept when receiving a notification. - Permitted values: - - BASIC: In every HTTP request to the notification endpoint, use - HTTP Basic authentication with the client credentials. - - OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the - notification endpoint, use an OAuth 2.0 Bearer token, obtained - using the client credentials grant type. - - TLS_CERT: Every HTTP request to the notification endpoint is sent - over a mutually authenticated TLS session, i.e. not only the - server is authenticated, but also the client is authenticated - during the TLS tunnel setup. - type: array - items: - type: string - enum: - - BASIC - - OAUTH2_CLIENT_CREDENTIALS - - TLS_CERT - paramsBasic: - description: > - Parameters for authentication/authorization using BASIC. - Shall be present if authType is "BASIC" and the contained - information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - userName: - description: > - Username to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - password: - description: > - Password to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - paramsOauth2ClientCredentials: - description: > - Parameters for authentication/authorization using - OAUTH2_CLIENT_CREDENTIALS. - Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the - contained information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - clientId: - description: > - Client identifier to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a subscription shall - not be the same as the clientId and clientPassword that are used - to obtain authorization for API requests. Client credentials may - differ between subscriptions. The value of clientPassword should - be generated by a random process. - type: string - clientPassword: - description: > - Client password to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a subscription shall - not be the same as the clientId and clientPassword that are used - to obtain authorization for API requests. Client credentials may - differ between subscriptions. The value of clientPassword should - be generated by a random process. - type: string - tokenEndpoint: - description: > - The token endpoint from which the access token can be obtained. - Shall be present if it has not been provisioned out of band. - $ref: "#/definitions/Uri" \ No newline at end of file + Link: + description: > + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: > + URI of the referenced resource. + type: string + format: url + + DateTime: + description: > + Date-time stamp. + Representation: String formatted according to IETF RFC 3339. + type: string + format: "date-time" + + String: + description: > + This type represents stack of string values + type: string + + Object: + description: > + This type represents stack of object values + type: object + + KeyValuePairs: + description: > + This type represents a list of key-value pairs. The order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + + Uri: + description: > + String formatted according to IETF RFC 3986. + type: string + + ProblemDetails: + #SOL005 location: 4.3.5.3-1 + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present document, + to ensure that the response contains additional textual information about + an error. IETF RFC 7807 [19] foresees extensibility of the + "ProblemDetails" type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to define + additional attributes that provide more information about the error. + The description column only provides some explanation of the meaning to + Facilitate understanding of the design. For a full description, see + IETF RFC 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies the + problem type. It is encouraged that the URI provides human-readable + documentation for the problem (e.g. using HTML) when dereferenced. + When this member is not present, its value is assumed to be + "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should not + change from occurrence to occurrence of the problem, except for + purposes of localization. If type is given and other than + "about:blank", this attribute shall also be provided. + A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of the + problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by the origin + server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of the + problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + IdentifierInVnfd: + description: > + Identifier of the software image. + type: string + + NSInstanceSubscriptionFilter: + description: > + This type represents subscription filter criteria to match NS instances. + type: object + properties: + nsdIds: + description: > + If present, match NS instances that were created + based on a NSD identified by one of the nsdId + values listed in this attribute. + type: array + items: + $ref: "#/definitions/Identifier" + vnfdIds: + description: > + If present, match NS instances that contain VNF + instances that were created based on a VNFD + identified by one of the vnfdId values listed in + this attribute. + type: array + items: + $ref: "#/definitions/Identifier" + pnfdIds: + description: > + If present, match NS instances that contain + PNFs that are represented by a PNFD identified + by one of the pnfdId values listed in this + attribute. + type: array + items: + $ref: "#/definitions/Identifier" + nsInstanceIds: + description: > + If present, match NS instances with an instance + identifier listed in this attribute. + type: array + items: + $ref: "#/definitions/Identifier" + nsInstanceNames: + description: > + If present, match NS instances with a NS + Instance Name listed in this attribute. + type: array + items: + $ref: "#/definitions/String" + + SubscriptionAuthentication: + type: object + required: + - authType + properties: + authType: + description: > + Defines the types of Authentication / Authorization which the API + consumer is willing to accept when receiving a notification. + Permitted values: + - BASIC: In every HTTP request to the notification endpoint, use + HTTP Basic authentication with the client credentials. + - OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the + notification endpoint, use an OAuth 2.0 Bearer token, obtained + using the client credentials grant type. + - TLS_CERT: Every HTTP request to the notification endpoint is sent + over a mutually authenticated TLS session, i.e. not only the + server is authenticated, but also the client is authenticated + during the TLS tunnel setup. + type: array + items: + type: string + enum: + - BASIC + - OAUTH2_CLIENT_CREDENTIALS + - TLS_CERT + paramsBasic: + description: > + Parameters for authentication/authorization using BASIC. + Shall be present if authType is "BASIC" and the contained + information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + userName: + description: > + Username to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + password: + description: > + Password to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + paramsOauth2ClientCredentials: + description: > + Parameters for authentication/authorization using + OAUTH2_CLIENT_CREDENTIALS. + Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the + contained information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + clientId: + description: > + Client identifier to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a subscription shall + not be the same as the clientId and clientPassword that are used + to obtain authorization for API requests. Client credentials may + differ between subscriptions. The value of clientPassword should + be generated by a random process. + type: string + clientPassword: + description: > + Client password to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a subscription shall + not be the same as the clientId and clientPassword that are used + to obtain authorization for API requests. Client credentials may + differ between subscriptions. The value of clientPassword should + be generated by a random process. + type: string + tokenEndpoint: + description: > + The token endpoint from which the access token can be obtained. + Shall be present if it has not been provisioned out of band. + $ref: "#/definitions/Uri" \ No newline at end of file diff --git a/src/SOL005/NSPerformanceManagement/responses/SOL005_resp.yaml b/src/SOL005/NSPerformanceManagement/responses/SOL005_resp.yaml index d5a535c..13d0e76 100644 --- a/src/SOL005/NSPerformanceManagement/responses/SOL005_resp.yaml +++ b/src/SOL005/NSPerformanceManagement/responses/SOL005_resp.yaml @@ -1,245 +1,245 @@ - # Copyright (c) ETSI 2017. - # https://forge.etsi.org/etsi-forge-copyright-notice.txt - responses: - 303: - description: > - See Other. - A subscription with the same callbackURI and the - same filter already exits and the policy of the NFVO is - to not create redundant subscriptions. - The HTTP response shall include a "Location" HTTP - header that contains the resource URI of the existing - subscription resource. - The response body shall be empty. - 400: - description: > - Bad Request. - - Error: Invalid attribute-based filtering parameters. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute should convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 400-attr-based-filtering-error: - description: > - Bad Request - Invalid attribute-based filtering parameters or Invalid attribute - selector. - It the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided, - and should include in the "detail" attribute more information about - the source of the problem. - If the request contains a malformed access token, the API producer - should respond with this response. The details of the error shall - be returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be - provided. - If there is an application error related to the client's input that - cannot be easily mapped to any other HTTP response code ("catch all - error"), the API producer shall respond with this response code.The - "ProblemDetails" structure shall be provided, and shall include in - the "detail" attribute more information about the source of the - problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 401: - description: > - Unauthorized. - If the request contains no access token even though one is - required, or if the request contains an authorization token that - is invalid (e.g. expired or revoked), the API producer should - respond with this response. The details of the error shall be - returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails - structure may be provided. - headers: - Content-Type: - type: string - description: The MIME type of the body of the response. - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 403: - description: > - Forbidden - If the API consumer is not allowed to perform a particular request - to a particular resource, the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided. - It should include in the "detail" attribute information about the - source of the problem, and may indicate how to solve it. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - The "ProblemDetails" structure may be provided, - including in the "detail" attribute information about the source - of the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-resource-not-exists: - description: > - Not Found - Error: The API producer did not find a current representation for the - target resource or is not willing to disclose that one exists. - Specifically in case of this task resource, the response code 404 shall - also returned if the task is not supported for the NS instance - represented by the parent resource, which means that the task resource - consequently does not exist. - In this case, the response body shall be present, and shall contain a - ProblemDetails structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-not-suported: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - Specifically in case of this task resource, the reason can also be that - the task is not supported for the NS instance represented by the parent - resource, and that the task resource consequently does not exist. - The "ProblemDetails" structure may be provided, including in the - "detail" attribute information about the sourceof the problem, e.g. a - wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 405: - description: > - Method Not Allowed - If a particular HTTP method is not supported for a particular - resource, the API producer shall respond with this response code. - The "ProblemDetails" structure may be omitted in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 406: - description: > - If the "Accept" header does not contain at least one - name of a content type for which the NFVO can - provide a representation of the VNFD, the NFVO - shall respond with this response code. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 416: - description: > - The byte range passed in the "Range" header did not - match any available byte range in the NSD file (e.g. - "access after end of file"). - The response body may contain a ProblemDetails structure. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 500: - description: > - Internal Server Error - If there is an application error not related to the client's input - that cannot be easily mapped to any other HTTP response code - ("catch all error"), the API producer shall respond withthis - response code. The ProblemDetails structure shall be provided, - and shall include in the "detail" attribute more information about - the source of the problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 503: - description: > - Service Unavailable - If the API producer encounters an internal overload situation of - itself or of a system it relies on, it should respond with this - response code, following the provisions in IETF RFC 7231 [13] for - the use of the Retry-After HTTP header and for the alternative - to refuse the connection. The "ProblemDetails" structure may be omitted. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +responses: + 303: + description: > + See Other. + A subscription with the same callbackURI and the + same filter already exits and the policy of the NFVO is + to not create redundant subscriptions. + The HTTP response shall include a "Location" HTTP + header that contains the resource URI of the existing + subscription resource. + The response body shall be empty. + 400: + description: > + Bad Request. + + Error: Invalid attribute-based filtering parameters. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute should convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 400-attr-based-filtering-error: + description: > + Bad Request + Invalid attribute-based filtering parameters or Invalid attribute + selector. + It the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, + and should include in the "detail" attribute more information about + the source of the problem. + If the request contains a malformed access token, the API producer + should respond with this response. The details of the error shall + be returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be + provided. + If there is an application error related to the client's input that + cannot be easily mapped to any other HTTP response code ("catch all + error"), the API producer shall respond with this response code.The + "ProblemDetails" structure shall be provided, and shall include in + the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 401: + description: > + Unauthorized. + If the request contains no access token even though one is + required, or if the request contains an authorization token that + is invalid (e.g. expired or revoked), the API producer should + respond with this response. The details of the error shall be + returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails + structure may be provided. + headers: + Content-Type: + type: string + description: The MIME type of the body of the response. + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 403: + description: > + Forbidden + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. + It should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source + of the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-resource-not-exists: + description: > + Not Found + Error: The API producer did not find a current representation for the + target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 shall + also returned if the task is not supported for the NS instance + represented by the parent resource, which means that the task resource + consequently does not exist. + In this case, the response body shall be present, and shall contain a + ProblemDetails structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-not-suported: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + Specifically in case of this task resource, the reason can also be that + the task is not supported for the NS instance represented by the parent + resource, and that the task resource consequently does not exist. + The "ProblemDetails" structure may be provided, including in the + "detail" attribute information about the sourceof the problem, e.g. a + wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 405: + description: > + Method Not Allowed + If a particular HTTP method is not supported for a particular + resource, the API producer shall respond with this response code. + The "ProblemDetails" structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 406: + description: > + If the "Accept" header does not contain at least one + name of a content type for which the NFVO can + provide a representation of the VNFD, the NFVO + shall respond with this response code. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 416: + description: > + The byte range passed in the "Range" header did not + match any available byte range in the NSD file (e.g. + "access after end of file"). + The response body may contain a ProblemDetails structure. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 500: + description: > + Internal Server Error + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code + ("catch all error"), the API producer shall respond withthis + response code. The ProblemDetails structure shall be provided, + and shall include in the "detail" attribute more information about + the source of the problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 503: + description: > + Service Unavailable + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the Retry-After HTTP header and for the alternative + to refuse the connection. The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml index 3b0a479..168ea80 100644 --- a/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml @@ -1,7 +1,7 @@ swagger: "2.0" info: - version: "1.0.0" + version: "1.0.0" title: SOL005 - VNF Package Management Interface description: > SOL005 - VNF Package Management Interface @@ -13,7 +13,7 @@ info: license: name: "ETSI Forge copyright notice" url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - contact: + contact: name: "NFV-SOL WG" externalDocs: description: ETSI GS NFV-SOL 005 V2.4.1 @@ -24,16 +24,16 @@ schemes: consumes: - "application/json" produces: - - "application/json" + - "application/json" paths: -############################################################################### -# VNF Packages # -############################################################################### + ############################################################################### + # VNF Packages # + ############################################################################### '/vnf_packages': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.2 get: summary: Query VNF packages information. - description: > + description: > The GET method queries the information of the VNF packages matching the filter. This method shall follow the provisions specified in the Tables 9.4.2.3.2-1 and 9.4.2.3.2-2 for URI query parameters, @@ -43,7 +43,7 @@ paths: in: "query" required: false type: "string" - description: > + description: > Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. @@ -53,28 +53,28 @@ paths: in: "query" required: false type: "string" - description: > + description: > Include all complex attributes in the response. See clause 4.3.3 for details. The NFVO shall support this parameter. - name: "fields" in: "query" required: false type: "string" - description: > + description: > Complex attributes to be included into the response. See clause 4.3.3 for details. The NFVO should support this parameter. - name: "exclude_fields" in: "query" required: false type: "string" - description: > + description: > Complex attributes to be excluded from the response. See clause 4.3.3 for details. The NFVO should support this parameter. - name: "exclude_default" in: "query" required: false type: "string" - description: > + description: > Indicates to exclude the following complex attributes from the response. See clause 4.3.3 for details. The NFVO shall support this parameter. @@ -98,12 +98,12 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string responses: 200: description: > 200 OK - + Information of the selected VNF packages. headers: Content-Type: @@ -111,20 +111,20 @@ paths: type: string maximum: 1 minimum: 1 - WWW-Authenticate: + WWW-Authenticate: type: "string" description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 schema: type: array items: properties: VnfPkgInfo: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo" + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -142,52 +142,52 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" post: summary: Create a new individual VNF package resource. - description: > + description: > The POST method creates a new individual VNF package resource. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "CreateVnfPkgInfoRequest" - properties: - CreateVnfPkgInfoRequest: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/CreateVnfPkgInfoRequest" - description: > - IndividualVNF package resource creation parameters, as defined in clause 9.5.2.2 - + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "CreateVnfPkgInfoRequest" + properties: + CreateVnfPkgInfoRequest: + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/CreateVnfPkgInfoRequest" + description: > + IndividualVNF package resource creation parameters, as defined in clause 9.5.2.2 + responses: 201: - description: > + description: > 201 Created - + An individual VNF package resource has been created successfully. The response body shall contain a representation of the new individual VNF package resource, as defined @@ -207,7 +207,7 @@ paths: field shall be present if the response has a non-empty message body. maximum: 1 - minimum: 1 + minimum: 1 WWW-Authenticate: type: "string" description: > @@ -216,9 +216,9 @@ paths: has provided an invalid authorization token. maximum: 1 minimum: 0 -############################################################################### -# Individual VNF Package # -############################################################################### + ############################################################################### + # Individual VNF Package # + ############################################################################### '/vnf_packages/{vnfPkgId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.3 parameters: @@ -226,11 +226,11 @@ paths: description: > Identifier of the VNF package. The identifier is allocated by the NFVO. in: "path" - type: "string" + type: "string" required: true get: summary: Read information about an individual VNF package. - description: > + description: > The GET method reads the information of a VNF package. parameters: - name: Accept @@ -246,15 +246,15 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string responses: 200: description: > 200 OK - + Information of the VNF package. schema: - type: "object" + type: "object" properties: VnfPkgInfo: $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo" @@ -289,10 +289,10 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" delete: summary: Delete an individual VNF package. - description: > + description: > The DELETE method deletes an individual VNF Package resource. parameters: - name: Authorization @@ -301,12 +301,12 @@ paths: Reference: IETF RFC 7235 in: header required: false - type: string + type: string responses: 204: description: > 204 No Content - + The VNF package was deleted successfully. The response body shall be empty. 409: @@ -328,47 +328,47 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" patch: summary: Update information about an individual VNF package. - description: > + description: > "The PATCH method updates the information of a VNF package." - + "This method shall follow the provisions specified in the Tables 9.4.3.3.4-1 and 9.4.3.3.4-2 for URI query parameters, request and response data structures, and response codes." parameters: - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "VnfPkgInfoModifications" - properties: - VnfPkgInfoModifications: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfoModifications" - description: > - Parameters for VNF package information modifications. - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - responses: + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "VnfPkgInfoModifications" + properties: + VnfPkgInfoModifications: + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfoModifications" + description: > + Parameters for VNF package information modifications. + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + responses: 200: description: > 200 OK - + The operation was completed successfully. The response body shall contain attribute modifications for an "Individual VNF @@ -389,7 +389,7 @@ paths: minimum: 0 schema: properties: - VnfPkgInfoModifications: + VnfPkgInfoModifications: $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfoModifications" 409: $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409" @@ -410,11 +410,11 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# VNFD in an individual VNF package # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + + ############################################################################### + # VNFD in an individual VNF package # + ############################################################################### '/vnf_packages/{vnfPkgId}/vnfd': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.4 parameters: @@ -423,12 +423,12 @@ paths: Identifier of the on-boarded VNF package. The identifier is allocated by the NFVO. in: path type: string - required: true + required: true get: summary: Read VNFD of an on-boarded VNF package. - description: > + description: > The GET method reads the content of the VNFD within a VNF package. - + The VNFD can be implemented as a single file or as a collection of multiple files. If the VNFD is implemented in the form of multiple files, a ZIP file embedding these files shall be returned. If the VNFD is implemented as a single file, either that file or a ZIP file embedding that file shall be returned. @@ -445,25 +445,25 @@ paths: This method shall follow the provisions specified in the Tables 9.4.4.3.2-1 and 9.4.4.3.2-2 for URI query parameters, request and response data structures, and response codes. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - in: header - required: true - type: string - enum: - - text/plain - - application/zip - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string + - name: Accept + description: > + Content-Types that are acceptable for the response. + in: header + required: true + type: string + enum: + - text/plain + - application/zip + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string responses: 200: - description: > + description: > 200 OK On success, the content of the VNFD is returned. @@ -501,23 +501,23 @@ paths: 406: description: > "406 Not AccepTable" - - $ref: "responses/SOL005_resp.yaml#/responses/406" + + $ref: "responses/SOL005_resp.yaml#/responses/406" 409: description: > "409 Conflict" - - $ref: "responses/VNFPackageManagement_resp.yaml#/responses/406-state-conflict" + + $ref: "responses/VNFPackageManagement_resp.yaml#/responses/406-state-conflict" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# VNF Package Content # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + + ############################################################################### + # VNF Package Content # + ############################################################################### '/vnf_packages/{vnfPkgId}/package_content': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.5 parameters: @@ -526,43 +526,43 @@ paths: Identifier of the on-boarded VNF package. The identifier is allocated by the NFVO. in: "path" required: true - type: "string" + type: "string" get: summary: Fetch an on-boarded VNF package. - description: > + description: > The GET method fetches the content of a VNF package identified by the VNF package identifier allocated by the NFVO. This method shall follow the provisions specified in the Tables 9.4.5.3.2-1 and 9.4.5.3.2-2 for URI query parameters, request and response data structures, and response codes. parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - in: header - required: true - type: string - enum: - - application/zip - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: "Range" - in: "header" - required: false - type: "string" - description: > - The request may contain a "Range" HTTP header to obtain single - range of bytes from the VNF package file. This can be used to - continue an aborted transmission. - - If the NFVO does not support range requests, it should return the - whole file with a 200 OK response instead. + - name: Accept + description: > + Content-Types that are acceptable for the response. + in: header + required: true + type: string + enum: + - application/zip + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: "Range" + in: "header" + required: false + type: "string" + description: > + The request may contain a "Range" HTTP header to obtain single + range of bytes from the VNF package file. This can be used to + continue an aborted transmission. + + If the NFVO does not support range requests, it should return the + whole file with a 200 OK response instead. responses: 200: - description: > + description: > 200 OK On success, a copy of the VNF package file is returned. @@ -588,7 +588,7 @@ paths: 206: $ref: "responses/SOL005_resp.yaml#/responses/206" 409: - description: > + description: > $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409-state-conflict-ONBOARDING" 416: $ref: "responses/SOL005_resp.yaml#/responses/416" @@ -607,53 +607,53 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + put: summary: Upload a VNF package by providing the content of the VNF package. - description: > + description: > The PUT method uploads the content of a VNF package. This method shall follow the provisions specified in the Tables 9.4.5.3.3-1 and 9.4.5.3.3-2 for URI query parameters, request and response data structures, and response codes. consumes: - - multipart/form-data + - multipart/form-data parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - in: header - required: true - type: string - enum: - - application/zip - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - in: formData - name: file - required: false - type: file - description: > - The payload body contains a ZIP file that represents the VNF package. - The "Content-Type" HTTP header shall be set according to the - type of the file, i.e. to "application/zip" for a VNF Package as - defined in ETSI GS NFV-SOL 004 [5]. + - name: Accept + description: > + Content-Types that are acceptable for the response. + in: header + required: true + type: string + enum: + - application/zip + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - in: formData + name: file + required: false + type: file + description: > + The payload body contains a ZIP file that represents the VNF package. + The "Content-Type" HTTP header shall be set according to the + type of the file, i.e. to "application/zip" for a VNF Package as + defined in ETSI GS NFV-SOL 004 [5]. responses: 202: - description: > + description: > 202 Accepted - + The VNF package was accepted for uploading, but the processing has not been completed. It is expected to take some time for processing. The response body shall be empty. 409: - description: > + description: > $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409-state-conflict-ONBOARDING-NOT-CREATED" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" @@ -670,69 +670,69 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "responses/SOL005_resp.yaml#/responses/503" -############################################################################### -# Upload VNF package from URI task # -############################################################################### + ############################################################################### + # Upload VNF package from URI task # + ############################################################################### '/vnf_packages/{vnfPkgId}/package_content/upload_from_uri': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.6 post: summary: Upload a VNF package by providing the address information of the VNF package. - description: > + description: > The POST method provides the information for the NFVO to get the content of a VNF package. This method shall follow the provisions specified in the Tables 9.4.6.3.1-1 and 9.4.6.3.1-2 for URI query parameters, request and response data structures, and response codes. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - - name: "vnfPkgId" - description: > - Identifier of the VNF package. The identifier is allocated by the NFVO. - in: "path" - required: true - type: "string" - - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "UploadVnfPkgFromUriRequest" - properties: - UploadVnfPkgFromUriRequest: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/UploadVnfPkgFromUriRequest" - description: > - The payload body contains the address information based on - which the NFVO can obtain the content of the VNF package. - + parameters: + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + + - name: "vnfPkgId" + description: > + Identifier of the VNF package. The identifier is allocated by the NFVO. + in: "path" + required: true + type: "string" + + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "UploadVnfPkgFromUriRequest" + properties: + UploadVnfPkgFromUriRequest: + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/UploadVnfPkgFromUriRequest" + description: > + The payload body contains the address information based on + which the NFVO can obtain the content of the VNF package. + responses: 202: description: > 202 Accepted - + The information about the VNF package was received successfully, but the on-boarding has not been completed. It is expected to take some time for processing. @@ -754,147 +754,147 @@ paths: 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual VNF package artifact # -############################################################################### + $ref: "responses/SOL005_resp.yaml#/responses/503" + + ############################################################################### + # Individual VNF package artifact # + ############################################################################### '/vnf_packages/{vnfPkgId}/artifacts/{artifactPath}': - #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.7 - parameters: - - name: vnfPkgId - description: > - Identifier of the on-boarded VNF package. - The identifier is allocated by the NFVO. - This identifier can be retrieved from the "vnfPkgId" attribute in the VnfPackageOnboardingNotification or - VnfPackageChangeNotification. - in: path - type: string - required: true - - name: artifactPath - description: > - Path of the artifact within the VNF package. - This identifier can be retrieved from the "artifactPath" attribute of the applicable "additionalArtifacts" entry in - the body of the response to a GET request querying the "Individual VNF package" or the "VNF packages" - resource. - in: path - type: string - required: true - get: - summary: Fetch individual VNF package artifact. - description: > - The GET method fetches the content of an artifact within a VNF package. - This method shall follow the provisions specified in the - Tables 9.4.7.3.2-1 and 9.4.7.3.2-2 for URI query parameters, - request and response data structures, and response codes. - parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Range - description: > - The request may contain a "Range" HTTP header to obtain single - range of bytes from the VNF package file. This can be used to - continue an aborted transmission. - If the NFVO does not support range requests, it should return the - whole file with a 200 OK response instead. - in: header - type: string - responses: - 200: - description: > - 200 OK - On success, the content of the artifact is returned. - The payload body shall contain a copy of the artifact file from - the VNF package, as defined by ETSI GS NFV-SOL 004. - 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". - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - maximum: 1 - minimum: 0 - - 206: - description: > - Partial Content. - On success, if the NFVO supports range requests, a single - consecutive byte range from the content of the VNF package file is - returned. - 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. - The "Content-Type" HTTP header shall be set as defined above for - the "200 OK" response. - headers: - Content-Range: - type: string - maximum: 1 - minimum: 1 - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - maximum: 1 - minimum: 0 - 400: - $ref: "responses/SOL005_resp.yaml#/responses/400" - 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" - 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" - 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" - 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" - 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" - 409: - $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409" - 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" - 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" - 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################## -# Subscriptions # -############################################################################### + #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.7 + parameters: + - name: vnfPkgId + description: > + Identifier of the on-boarded VNF package. + The identifier is allocated by the NFVO. + This identifier can be retrieved from the "vnfPkgId" attribute in the VnfPackageOnboardingNotification or + VnfPackageChangeNotification. + in: path + type: string + required: true + - name: artifactPath + description: > + Path of the artifact within the VNF package. + This identifier can be retrieved from the "artifactPath" attribute of the applicable "additionalArtifacts" entry in + the body of the response to a GET request querying the "Individual VNF package" or the "VNF packages" + resource. + in: path + type: string + required: true + get: + summary: Fetch individual VNF package artifact. + description: > + The GET method fetches the content of an artifact within a VNF package. + This method shall follow the provisions specified in the + Tables 9.4.7.3.2-1 and 9.4.7.3.2-2 for URI query parameters, + request and response data structures, and response codes. + parameters: + - name: Accept + description: > + Content-Types that are acceptable for the response. + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Range + description: > + The request may contain a "Range" HTTP header to obtain single + range of bytes from the VNF package file. This can be used to + continue an aborted transmission. + If the NFVO does not support range requests, it should return the + whole file with a 200 OK response instead. + in: header + type: string + responses: + 200: + description: > + 200 OK + On success, the content of the artifact is returned. + The payload body shall contain a copy of the artifact file from + the VNF package, as defined by ETSI GS NFV-SOL 004. + 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". + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + type: "string" + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + maximum: 1 + minimum: 0 + + 206: + description: > + Partial Content. + On success, if the NFVO supports range requests, a single + consecutive byte range from the content of the VNF package file is + returned. + 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. + The "Content-Type" HTTP header shall be set as defined above for + the "200 OK" response. + headers: + Content-Range: + type: string + maximum: 1 + minimum: 1 + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + type: "string" + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + maximum: 1 + minimum: 0 + 400: + $ref: "responses/SOL005_resp.yaml#/responses/400" + 401: + $ref: "responses/SOL005_resp.yaml#/responses/401" + 403: + $ref: "responses/SOL005_resp.yaml#/responses/403" + 404: + $ref: "responses/SOL005_resp.yaml#/responses/404" + 405: + $ref: "responses/SOL005_resp.yaml#/responses/405" + 406: + $ref: "responses/SOL005_resp.yaml#/responses/406" + 409: + $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409" + 416: + $ref: "responses/SOL005_resp.yaml#/responses/416" + 500: + $ref: "responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "responses/SOL005_resp.yaml#/responses/503" + + ############################################################################## + # Subscriptions # + ############################################################################### '/subscriptions': - #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.8 + #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.8 post: summary: Subscribe to notifications related to on-boarding and/or changes of VNF packages. - description: > + description: > The POST method creates a new subscription. This method shall follow the provisions specified in the Tables 9.4.8.3.1-1 and 9.4.8.3.1-2 for URI query parameters, request and response data structures, and response codes. @@ -905,47 +905,47 @@ paths: to not create a duplicate subscription resource (in which case it shall return a "303 See Other" response code referencing the existing subscription resource with the same filter and callbackUri). parameters: - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Authorization - description: > - The authorization token for the request. - Reference: IETF RFC 7235 - in: header - required: false - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: "body" - in: "body" - required: true - schema: - type: "object" - required: - - "PkgmSubscriptionRequest" - properties: - PkgmSubscriptionRequest: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscriptionRequest" + - name: Accept description: > - Representation of the created subscription resource. - The HTTP response shall include a "Location" HTTP header that - points to the created subscription resource. - + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Authorization + description: > + The authorization token for the request. + Reference: IETF RFC 7235 + in: header + required: false + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: "body" + in: "body" + required: true + schema: + type: "object" + required: + - "PkgmSubscriptionRequest" + properties: + PkgmSubscriptionRequest: + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscriptionRequest" + description: > + Representation of the created subscription resource. + The HTTP response shall include a "Location" HTTP header that + points to the created subscription resource. + responses: 201: description: > 201 Created - + Representation of the created subscription resource. The HTTP response shall include a "Location" HTTP header that points to the created subscription resource. @@ -962,13 +962,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 schema: type: array items: properties: PkgmSubscription: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" 303: $ref: "responses/SOL005_resp.yaml#/responses/303" 400: @@ -991,7 +991,7 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/503" get: summary: Query multiple subscriptions. - description: > + description: > The GET method queries the list of active subscriptions of the functional block that invokes the method. It can be used e.g. for resynchronization after error situations. This method shall follow the provisions specified in the @@ -1002,7 +1002,7 @@ paths: in: "query" required: false type: "string" - description: > + description: > Attribute-based filtering parameters according to clause 4.3.2. The NFVO shall support receiving filtering parameters as part of the URI query string. The OSS/BSS may supply filtering parameters. @@ -1026,7 +1026,7 @@ paths: 200: description: > 200 OK - + Active subscriptions of the functional block that invokes the method. headers: Content-Type: @@ -1041,13 +1041,13 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 schema: type: array items: properties: PkgmSubscription: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -1066,12 +1066,12 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: $ref: "responses/SOL005_resp.yaml#/responses/503" - -############################################################################### -# Individual subscription # -############################################################################### + + ############################################################################### + # Individual subscription # + ############################################################################### '/subscriptions/{subscriptionId}': - #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.9 + #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.9 parameters: - name: subscriptionId description: > @@ -1084,7 +1084,7 @@ paths: type: string required: true get: - summary: Read an individual subscription resource. + summary: Read an individual subscription resource. description: > Query Subscription Information The GET method reads an individual subscription. @@ -1107,7 +1107,7 @@ paths: 200: description: > 200 OK - + Representation of the subscription resource. headers: Content-Type: @@ -1122,11 +1122,11 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 schema: properties: PkgmSubscription: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: @@ -1147,7 +1147,7 @@ paths: $ref: "responses/SOL005_resp.yaml#/responses/503" delete: summary: Terminate a subscription. - description: > + description: > The DELETE method terminates an individual subscription. parameters: - name: Authorization @@ -1159,7 +1159,7 @@ paths: type: string responses: 204: - description: > + description: > No Content The subscription resource was deleted successfully. @@ -1191,11 +1191,11 @@ paths: 503: $ref: "responses/SOL005_resp.yaml#/responses/503" -################################################################################## -# Notification endpoint # -# Dummy URI is used for testing. # -# In real, resource URI is provided by the client when creating the subscription.# -################################################################################## + ################################################################################## + # Notification endpoint # + # Dummy URI is used for testing. # + # In real, resource URI is provided by the client when creating the subscription.# + ################################################################################## '/URI_is_provided_by_the_client_when_creating_the_subscription-VnfPackageOnboardingNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.10 post: @@ -1214,7 +1214,7 @@ paths: schema: properties: VnfPackageOnboardingNotification: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPackageOnboardingNotification" + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPackageOnboardingNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -1240,7 +1240,7 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: @@ -1250,18 +1250,18 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + '/URI_is_provided_by_the_client_when_creating_the_subscription-VnfPackageChangeNotification': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.10 post: @@ -1271,7 +1271,7 @@ paths: This method shall follow the provisions specified in the Tables 9.4.10.3.1-1 and 9.4.10.3.1-2 for URI query parameters, request and response data structures, and response codes. - parameters: + parameters: - name: VnfPackageChangeNotification description: > A notification about changes of status in a VNF package. @@ -1280,7 +1280,7 @@ paths: schema: properties: VnfPackageChangeNotification: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPackageChangeNotification" + $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPackageChangeNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -1306,7 +1306,7 @@ paths: 204: description: > 204 No Content - + The notification was delivered successfully. headers: WWW-Authenticate: @@ -1316,18 +1316,18 @@ paths: authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. maximum: 1 - minimum: 0 + minimum: 0 400: $ref: "responses/SOL005_resp.yaml#/responses/400" 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "responses/SOL005_resp.yaml#/responses/503" + get: summary: Test the notification endpoint description: > @@ -1354,7 +1354,7 @@ paths: 204: description: > 204 No Content - + The notification endpoint was tested successfully. The response body shall be empty. 400: @@ -1362,7 +1362,7 @@ paths: 401: $ref: "responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "responses/SOL005_resp.yaml#/responses/403" 500: $ref: "responses/SOL005_resp.yaml#/responses/500" 503: diff --git a/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPMManagement_def.yaml b/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPMManagement_def.yaml index 2f97803..94b3680 100644 --- a/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPMManagement_def.yaml +++ b/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPMManagement_def.yaml @@ -5,7 +5,7 @@ definitions: - id - onboardingState - operationalState - - usageState + - usageState properties: id: description: > @@ -44,7 +44,7 @@ definitions: is copied from the VNFD. It shall be present after the VNF package content has been on-boarded and absent otherwise. - $ref: "SOL005_def.yaml#/definitions/Version" + $ref: "SOL005_def.yaml#/definitions/Version" checksum: description: > Checksum of the on-boarded VNF @@ -58,7 +58,7 @@ definitions: Otherwise, this attribute shall be present unless it has been requested to be excluded per attribute selector. type: "array" - items: + items: $ref: "#/definitions/VnfPackageSoftwareImageInfo" additionalArtifacts: description: > @@ -69,31 +69,31 @@ definitions: Otherwise, this attribute shall be present if the VNF package contains additional artifacts. type: "array" - items: - $ref: "#/definitions/VnfPackageArtifactInfo" + items: + $ref: "#/definitions/VnfPackageArtifactInfo" onboardingState: description: > On-boarding state of the VNF package. - $ref: "#/definitions/PackageOnboardingStateType" + $ref: "#/definitions/PackageOnboardingStateType" operationalState: description: > Operational state of the VNF package. - $ref: "#/definitions/PackageOperationalStateType" + $ref: "#/definitions/PackageOperationalStateType" usageState: description: > Usage state of the VNF package. - $ref: "#/definitions/PackageUsageStateType" + $ref: "#/definitions/PackageUsageStateType" userDefinedData: description: > Usage state of the VNF package. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" _links: type: object description: > Links to resources related to this resource. required: - self - - packageContent + - packageContent properties: self: description: > @@ -104,12 +104,12 @@ definitions: Link to the VNFD resource. This link shall be present after the VNF package content is on-boarded. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "SOL005_def.yaml#/definitions/Link" packageContent: description: > Link to the "VNF package content" resource. - $ref: "SOL005_def.yaml#/definitions/Link" - + $ref: "SOL005_def.yaml#/definitions/Link" + VnfPackageArtifactInfo: description: > This type represents an artifact other than a software image which is contained in a VNF package. @@ -123,7 +123,7 @@ definitions: description: > Path in the VNF package, which identifies the artifact and also allows to access a copy of the artifact. - $ref: "SOL005_def.yaml#/definitions/String" + $ref: "SOL005_def.yaml#/definitions/String" checksum: description: > Checksum of the artifact file. @@ -132,8 +132,8 @@ definitions: description: > The metadata of the artifact that are available in the VNF package, such as Content type, size, creation date, etc. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + PkgmLinks: description: > This type represents the links to resources that a VNF package management notification can contain. @@ -147,12 +147,12 @@ definitions: Link to the resource representing the VNF package to which the notified change applies, i.e. the individual on boarded VNF package resource that represents the VNF package. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "SOL005_def.yaml#/definitions/Link" subscription: description: > Link to the related subscription. - $ref: "SOL005_def.yaml#/definitions/Link" - + $ref: "SOL005_def.yaml#/definitions/Link" + VnfPackageSoftwareImageInfo: description: > This type represents an artifact contained in a VNF package which represents a software image. @@ -161,14 +161,14 @@ definitions: - name - provider - version - - checksum + - checksum - containerFormat - diskFormat - createdAt - - minDisk + - minDisk - minRam - - size - - imagePath + - size + - imagePath type: object properties: id: @@ -183,15 +183,15 @@ definitions: provider: description: > Provider of the software image. - type: string + type: string version: description: > Version of the software image. - $ref: "SOL005_def.yaml#/definitions/Version" + $ref: "SOL005_def.yaml#/definitions/Version" checksum: description: > Checksum of the software image file. - $ref: "SOL005_def.yaml#/definitions/Checksum" + $ref: "SOL005_def.yaml#/definitions/Checksum" containerFormat: description: > Container format indicates whether the software image @@ -212,7 +212,7 @@ definitions: - BARE - DOCKER - OVA - - OVF + - OVF diskFormat: description: > Disk format of a software image is the format of the @@ -241,7 +241,7 @@ definitions: - VDI - VHD - VHDX - - VMDK + - VMDK createdAt: description: > Time when this software image was created. @@ -250,21 +250,21 @@ definitions: description: > The minimal disk for this software image in bytes. type: integer - minimum: 0 + minimum: 0 minRam: description: > The minimal RAM for this software image in bytes. type: integer - minimum: 0 + minimum: 0 size: description: > Size of this software image in bytes. type: integer - minimum: 0 + minimum: 0 userMetadata: description: > User-defined data. - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" imagePath: description: > Path in the VNF package, which identifies the image @@ -274,25 +274,25 @@ definitions: NsdOperationalStateType: type: "string" - description: > + description: > "The enumeration NsdOperationalStateType shall comply with the provisions defined in Table 5.5.4.3-1 of GS NFV_SOL 005. It indicates the operational state of the resource.ENABLED = The operational state of the resource is enabled. DISABLED = The operational state of the resource is disabled." enum: - - "ENABLED" - - "DISABLED" + - "ENABLED" + - "DISABLED" PackageOperationalStateType: type: "string" - description: > + description: > "The enumeration PackageOperationalStateType shall comply with the provisions defined in Table 9.5.4.4-1." Acceptable values are: -ENABLED - The VNF package is enabled, i.e. it can be used for instantiation of new VNF instances. -DISABLED - The VNF package is disabled, i.e. it cannot be used for further VNF instantiation requests (unless and until the VNF package is re-enabled). enum: - - "ENABLED" - - "DISABLED" + - "ENABLED" + - "DISABLED" PackageOnboardingStateType: description: > The enumeration PackageOnboardingStateType shall comply with the provisions defined in Table 9.5.4.3-1. @@ -306,24 +306,24 @@ definitions: - CREATED - UPLOADING - PROCESSING - - ONBOARDED + - ONBOARDED PackageUsageStateType: type: "string" - description: > + description: > "The enumeration PackageUsageStateType shall comply with the provisions. Acceptable values are: -IN_USE - VNF instances instantiated from this VNF package exist. -NOT_IN_USE - No existing VNF instance is instantiated from this VNF package" enum: - - "IN_USE" - - "NOT_IN_USE" - + - "IN_USE" + - "NOT_IN_USE" + CreateVnfPkgInfoRequest: type: "object" properties: userDefinedData: - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - description: > + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + description: > IndividualVNF package resource creation parameters, as defined in clause 9.5.2.2. VnfPkgInfoModifications: @@ -337,19 +337,19 @@ definitions: instance of the VNF package. $ref: "#/definitions/PackageOperationalStateType" userDefinedData: - description: > + description: > User defined data to be updated. For existing keys, the value is replaced. $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - + UploadVnfPkgFromUriRequest: type: "object" properties: userDefinedData: - $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - description: > + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" + description: > "The payload body contains the address information based on which the NFVO can obtain the content of the VNF package" - + PkgmSubscription: description: > This type represents a subscription related to notifications about VNF package management. @@ -384,8 +384,8 @@ definitions: self: description: > URI of this resource. - $ref: "SOL005_def.yaml#/definitions/Link" - + $ref: "SOL005_def.yaml#/definitions/Link" + PkgmSubscriptionRequest: description: > This type represents a subscription request related to VNF package management @@ -412,7 +412,7 @@ definitions: to this subscription, as defined in clause 4.5.3.4. This attribute shall only be present if the subscriber requires authorization of notifications. - $ref: "SOL005_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "SOL005_def.yaml#/definitions/SubscriptionAuthentication" PkgmNotificationsFilter: description: > @@ -420,7 +420,7 @@ definitions: At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical "or" between the values of one filter attribute). - type: object + type: object properties: notificationTypes: description: > @@ -470,7 +470,7 @@ definitions: items: type: object required: - - vnfSoftwareVersion + - vnfSoftwareVersion properties: vnfSoftwareVersion: description: > @@ -482,10 +482,10 @@ definitions: VNF products with certain VNFD versions, a certain software version and a certain product name, from one particular provider. - type: array + type: array items: - $ref: "SOL005_def.yaml#/definitions/Version" - + $ref: "SOL005_def.yaml#/definitions/Version" + vnfdId: description: > Match VNF packages with a VNFD identifier @@ -503,7 +503,7 @@ definitions: absent otherwise. type: array items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" operationalState: description: > Match VNF packages with a package identifier @@ -514,7 +514,7 @@ definitions: absent otherwise. type: array items: - $ref: "#/definitions/PackageOperationalStateType" + $ref: "#/definitions/PackageOperationalStateType" usageState: description: > Match particular usage state of the on-boarded VNF package. @@ -525,7 +525,7 @@ definitions: type: array items: $ref: "#/definitions/PackageUsageStateType" - + VnfPackageOnboardingNotification: description: > This type represents a VNF package management notification, which informs the receiver that the on boarding process @@ -539,7 +539,7 @@ definitions: - notificationType - timeStamp - vnfPkgId - - vnfdId + - vnfdId - _links properties: id: @@ -575,11 +575,11 @@ definitions: identifies the VNF package and the VNFD in a globally unique way. It is copied from the VNFD of the on-boarded VNF package. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "SOL005_def.yaml#/definitions/Identifier" _links: description: > Links to resources related to this notification. - $ref: "#/definitions/PkgmLinks" + $ref: "#/definitions/PkgmLinks" VnfPackageChangeNotification: description: > @@ -598,8 +598,8 @@ definitions: - notificationType - timeStamp - vnfPkgId - - vnfdId - - changeType + - vnfdId + - changeType - _links properties: id: @@ -643,7 +643,7 @@ definitions: description: > New operational state of the VNF package. Only present when changeType is OP_STATE_CHANGE. - $ref: "#/definitions/PackageOperationalStateType" + $ref: "#/definitions/PackageOperationalStateType" _links: description: > Links to resources related to this notification. @@ -651,11 +651,11 @@ definitions: PackageChangeType: type: "string" - description: > + description: > The enumeration PackageChangeType shall comply with the provisions defined in Table 9.5.4.6-1. Permitted Values: - OP_STATE_CHANGE: The "operationalState" attribute has been changed. - PKG_DELETE: The VNF package has been deleted. enum: - - "OP_STATE_CHANGE" - - "PKG_DELETE" + - "OP_STATE_CHANGE" + - "PKG_DELETE" diff --git a/src/SOL005/VNFPackageManagement/definitions/SOL005_def.yaml b/src/SOL005/VNFPackageManagement/definitions/SOL005_def.yaml index 4542b7e..6e33242 100644 --- a/src/SOL005/VNFPackageManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/VNFPackageManagement/definitions/SOL005_def.yaml @@ -1,214 +1,214 @@ - definitions: - Identifier: - description: > - An identifier with the intention of being globally unique. - type: string - - Link: - description: > - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: > - URI of the referenced resource. - type: string - format: url - - DateTime: - description: > - Date-time stamp. - Representation: String formatted according to IETF RFC 3339. - type: string - format: "date-time" - - String: - description: > - This type represents stack of string values - type: string +definitions: + Identifier: + description: > + An identifier with the intention of being globally unique. + type: string - Object: - description: > - This type represents stack of object values - type: object - - KeyValuePairs: - description: > - This type represents a list of key-value pairs. The order of the pairs in the list is not significant. - In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions - defined in clause 4 of IETF RFC 7159. - type: object - - ProblemDetails: - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 [19] is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807 [19], the "status" and - "detail" attributes are mandated to be included by the present document, - to ensure that the response contains additional textual information about - an error. IETF RFC 7807 [19] foresees extensibility of the - "ProblemDetails" type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to define - additional attributes that provide more information about the error. - The description column only provides some explanation of the meaning to - Facilitate understanding of the design. For a full description, see - IETF RFC 7807 [19]. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 [5] that identifies the - problem type. It is encouraged that the URI provides human-readable - documentation for the problem (e.g. using HTML) when dereferenced. - When this member is not present, its value is assumed to be - "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should not - change from occurrence to occurrence of the problem, except for - purposes of localization. If type is given and other than - "about:blank", this attribute shall also be provided. - A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of the - problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by the origin - server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of the - problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - IdentifierInVnfd: - description: > - Identifier of the software image. - type: string - Uri: - description: > - String formatted according to IETF RFC 3986. - type: string - Version: - description: > - Software version of the VNF. This is - changed when there is any change to the - software included in the VNF package. - This information is copied from the VNFD. - It shall be present after the VNF package - content has been on-boarded and absent otherwise. - type: string - Checksum: - description: > - This type represents the checksum of a VNF package or an artifact file. - required: - - algorithm - - hash - type: object - properties: - algorithm: - description: > - Name of the algorithm used to generate the checksum, - as defined in ETSI GS NFV-SOL 004 [5]. For example, SHA-256, SHA-512. - type: string - hash: - description: > - The hexadecimal value of the checksum. - type: string - - SubscriptionAuthentication: - type: object - required: - - authType - properties: - authType: - description: > - Defines the types of Authentication / Authorization which the API - consumer is willing to accept when receiving a notification. - Permitted values: - * BASIC: In every HTTP request to the notification endpoint, use - HTTP Basic authentication with the client credentials. - * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the - notification endpoint, use an OAuth 2.0 Bearer token, obtained - using the client credentials grant type. - * TLS_CERT: Every HTTP request to the notification endpoint is sent - over a mutually authenticated TLS session, i.e. not only the - server is authenticated, but also the client is authenticated - during the TLS tunnel setup. - type: array - items: - type: string - enum: - - BASIC - - OAUTH2_CLIENT_CREDENTIALS - - TLS_CERT - paramsBasic: - description: > - Parameters for authentication/authorization using BASIC. - Shall be present if authType is "BASIC" and the contained - information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - userName: - description: > - Username to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - password: - description: > - Password to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - paramsOauth2ClientCredentials: - description: > - Parameters for authentication/authorization using - OAUTH2_CLIENT_CREDENTIALS. - Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the - contained information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - clientId: - description: > - Client identifier to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a subscription shall - not be the same as the clientId and clientPassword that are used - to obtain authorization for API requests. Client credentials may - differ between subscriptions. The value of clientPassword should - be generated by a random process. - type: string - clientPassword: - description: > - Client password to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. - The clientId and clientPassword passed in a subscription shall - not be the same as the clientId and clientPassword that are used - to obtain authorization for API requests. Client credentials may - differ between subscriptions. The value of clientPassword should - be generated by a random process. - type: string - tokenEndpoint: - description: > - The token endpoint from which the access token can be obtained. - Shall be present if it has not been provisioned out of band. - $ref: "#/definitions/Uri" \ No newline at end of file + Link: + description: > + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: > + URI of the referenced resource. + type: string + format: url + + DateTime: + description: > + Date-time stamp. + Representation: String formatted according to IETF RFC 3339. + type: string + format: "date-time" + + String: + description: > + This type represents stack of string values + type: string + + Object: + description: > + This type represents stack of object values + type: object + + KeyValuePairs: + description: > + This type represents a list of key-value pairs. The order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + + ProblemDetails: + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present document, + to ensure that the response contains additional textual information about + an error. IETF RFC 7807 [19] foresees extensibility of the + "ProblemDetails" type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to define + additional attributes that provide more information about the error. + The description column only provides some explanation of the meaning to + Facilitate understanding of the design. For a full description, see + IETF RFC 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies the + problem type. It is encouraged that the URI provides human-readable + documentation for the problem (e.g. using HTML) when dereferenced. + When this member is not present, its value is assumed to be + "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should not + change from occurrence to occurrence of the problem, except for + purposes of localization. If type is given and other than + "about:blank", this attribute shall also be provided. + A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of the + problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by the origin + server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of the + problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + IdentifierInVnfd: + description: > + Identifier of the software image. + type: string + Uri: + description: > + String formatted according to IETF RFC 3986. + type: string + Version: + description: > + Software version of the VNF. This is + changed when there is any change to the + software included in the VNF package. + This information is copied from the VNFD. + It shall be present after the VNF package + content has been on-boarded and absent otherwise. + type: string + Checksum: + description: > + This type represents the checksum of a VNF package or an artifact file. + required: + - algorithm + - hash + type: object + properties: + algorithm: + description: > + Name of the algorithm used to generate the checksum, + as defined in ETSI GS NFV-SOL 004 [5]. For example, SHA-256, SHA-512. + type: string + hash: + description: > + The hexadecimal value of the checksum. + type: string + + SubscriptionAuthentication: + type: object + required: + - authType + properties: + authType: + description: > + Defines the types of Authentication / Authorization which the API + consumer is willing to accept when receiving a notification. + Permitted values: + * BASIC: In every HTTP request to the notification endpoint, use + HTTP Basic authentication with the client credentials. + * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the + notification endpoint, use an OAuth 2.0 Bearer token, obtained + using the client credentials grant type. + * TLS_CERT: Every HTTP request to the notification endpoint is sent + over a mutually authenticated TLS session, i.e. not only the + server is authenticated, but also the client is authenticated + during the TLS tunnel setup. + type: array + items: + type: string + enum: + - BASIC + - OAUTH2_CLIENT_CREDENTIALS + - TLS_CERT + paramsBasic: + description: > + Parameters for authentication/authorization using BASIC. + Shall be present if authType is "BASIC" and the contained + information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + userName: + description: > + Username to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + password: + description: > + Password to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + paramsOauth2ClientCredentials: + description: > + Parameters for authentication/authorization using + OAUTH2_CLIENT_CREDENTIALS. + Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the + contained information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + clientId: + description: > + Client identifier to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a subscription shall + not be the same as the clientId and clientPassword that are used + to obtain authorization for API requests. Client credentials may + differ between subscriptions. The value of clientPassword should + be generated by a random process. + type: string + clientPassword: + description: > + Client password to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. + The clientId and clientPassword passed in a subscription shall + not be the same as the clientId and clientPassword that are used + to obtain authorization for API requests. Client credentials may + differ between subscriptions. The value of clientPassword should + be generated by a random process. + type: string + tokenEndpoint: + description: > + The token endpoint from which the access token can be obtained. + Shall be present if it has not been provisioned out of band. + $ref: "#/definitions/Uri" \ No newline at end of file diff --git a/src/SOL005/VNFPackageManagement/responses/SOL005_resp.yaml b/src/SOL005/VNFPackageManagement/responses/SOL005_resp.yaml index 745bf87..0460e15 100644 --- a/src/SOL005/VNFPackageManagement/responses/SOL005_resp.yaml +++ b/src/SOL005/VNFPackageManagement/responses/SOL005_resp.yaml @@ -1,13 +1,13 @@ - # Copyright (c) ETSI 2017. - # https://forge.etsi.org/etsi-forge-copyright-notice.txt - responses: - 202: - description: > - Accepted +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +responses: + 202: + description: > + Accepted - The request was accepted for processing, but processing has not - been completed. The response shall have an empty payload body. - headers: + The request was accepted for processing, but processing has not + been completed. The response shall have an empty payload body. + headers: Location: description: The resource URI of the created NS instance type: string @@ -20,407 +20,407 @@ type: string maximum: 1 minimum: 0 - 202-with-Location: - description: > - Accepted + 202-with-Location: + description: > + Accepted - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "NS Descriptor operation occurrence" resource corresponding to the - operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - 206: - description: > - Partial Content. - - On success, if the NFVO supports range requests, a - single consecutive byte range from the content of the - NSD file is returned. - The response body shall contain the requested part of - the NSD file. - The "Content-Range" HTTP header shall be provided - according to IETF RFC 7233 [23]. - The "Content-Type" HTTP header shall be set as - defined above for the "200 OK" response. - headers: - Content-Range: - type: "string" - Content-Type: - type: "string" - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 303: - description: > - See Other - A subscription with the same callbackURI and the same filter already - exists and the policy of the VNFM is to not create redundant - subscriptions. - The HTTP response shall include a "Location" HTTP header that contains - the resource URI of the existing subscription resource. - The response body shall be empty. - 400: - description: > - Bad Request. - - Error: Invalid attribute-based filtering parameters. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute should convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 400-attr-based-filtering-error: - description: > - Bad Request - Invalid attribute-based filtering parameters or Invalid attribute - selector. - It the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided, - and should include in the "detail" attribute more information about - the source of the problem. - If the request contains a malformed access token, the API producer - should respond with this response. The details of the error shall - be returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be - provided. - If there is an application error related to the client's input that - cannot be easily mapped to any other HTTP response code ("catch all - error"), the API producer shall respond with this response code.The - "ProblemDetails" structure shall be provided, and shall include in - the "detail" attribute more information about the source of the - problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 400-attr-selector: - description: > - Bad Request - If the request is malformed or syntactically incorrect (e.g. if the - request URI contains incorrect query parameters or a syntactically - incorrect payload body), the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided, - and should include in the "detail" attribute more information about - the source of the problem. - If the request contains a malformed access token, the API producer - should respond with this response. The details of the error shall - be returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be - provided. - If there is an application error related to the client's input that - cannot be easily mapped to any other HTTP response code ("catch all - error"), the API producer shall respond with this response code.The - "ProblemDetails" structure shall be provided, and shall include in - the "detail" attribute more information about the source of the - problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 401: - description: > - Unauthorized - If the request contains no access token even though one is - required, or if the request contains an authorization token that - is invalid (e.g. expired or revoked), the API producer should - respond with this response. The details of the error shall be - returned in the WWW-Authenticate HTTP header, as defined in - IETF RFC 6750 and IETF RFC 7235. The ProblemDetails - structure may be provided. - headers: - Content-Type: - type: string - description: The MIME type of the body of the response. - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 403: - description: > - Forbidden - If the API consumer is not allowed to perform a particular request - to a particular resource, the API producer shall respond with this - response code. The "ProblemDetails" structure shall be provided. - It should include in the "detail" attribute information about the - source of the problem, and may indicate how to solve it. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - The "ProblemDetails" structure may be provided, - including in the "detail" attribute information about the source - of the problem, e.g. a wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-resource-not-exists: - description: > - Not Found - Error: The API producer did not find a current representation for the - target resource or is not willing to disclose that one exists. - Specifically in case of this task resource, the response code 404 shall - also returned if the task is not supported for the NS instance - represented by the parent resource, which means that the task resource - consequently does not exist. - In this case, the response body shall be present, and shall contain a - ProblemDetails structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-resource-not-exists-NSD: - description: > - Not Found - Error: The API producer did not find a current representation for the - target resource or is not willing to disclose that one exists. - Specifically in case of this task resource, the response code 404 shall - also be returned if the task is not supported for the NS Descriptor operation - occurrence represented by the parent resource, which means that the task - resource consequently does not exist. - In this case, the response body shall be present, and shall contain a - ProblemDetails structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-not-suported: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - Specifically in case of this task resource, the reason can also be that - the task is not supported for the NS instance represented by the parent - resource, and that the task resource consequently does not exist. - The "ProblemDetails" structure may be provided, including in the - "detail" attribute information about the sourceof the problem, e.g. a - wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 404-task-not-suported-NSD: - description: > - Not Found - If the API producer did not find a current representation for the - resource addressed by the URI passed in the request, or is not - willing to disclose that one exists, it shall respond with this - response code. - Specifically in case of this task resource, the reason can also be that - the task is not supported for the NS Descriptor operation occurrence - represented by the parent resource, and that the task resource - consequently does not exist. - The "ProblemDetails" structure may be provided, including in the - "detail" attribute information about the sourceof the problem, e.g. a - wrong resource URI variable. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 405: - description: > - Method Not Allowed - If a particular HTTP method is not supported for a particular - resource, the API producer shall respond with this response code. - The "ProblemDetails" structure may be omitted in that case. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 406: - description: > - If the "Accept" header does not contain at least one - name of a content type for which the NFVO can - provide a representation of the VNFD, the NFVO - shall respond with this response code. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 412: - description: > - Precondition Failed - A precondition given in an HTTP request header is not fulfilled. - Typically, this is due to an ETag mismatch, indicating that the - resource was modified by another entity. The response body should - contain a ProblemDetails structure, in which the "detail" attribute - should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 416: - description: > - Requested Range Not Satisfiable - - The byte range passed in the "Range" header did not - match any available byte range in the VNF package - file (e.g. "access after end of file"). - The response body may contain a ProblemDetails structure. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 422: - description: > - Un-processable Entity - If the payload body of a request contains syntactically correct - data (e.g. well-formed JSON) but the data cannot be processed - (e.g. because it fails validation against a schema), the API - producer shall respond with this response code. The - "ProblemDetails" structure shall be provided, and should include - in the "detail" attribute more information about the source of the - problem. - NOTE 2: This error response code is only applicable for methods - that have a request body. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 500: - description: > - Internal Server Error - If there is an application error not related to the client's input - that cannot be easily mapped to any other HTTP response code - ("catch all error"), the API producer shall respond withthis - response code. The ProblemDetails structure shall be provided, - and shall include in the "detail" attribute more information about - the source of the problem. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 503: - description: > - Service Unavailable - If the API producer encounters an internal overload situation of - itself or of a system it relies on, it should respond with this - response code, following the provisions in IETF RFC 7231 [13] for - the use of the Retry-After HTTP header and for the alternative - to refuse the connection. The "ProblemDetails" structure may be omitted. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "NS Descriptor operation occurrence" resource corresponding to the + operation. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + 206: + description: > + Partial Content. + + On success, if the NFVO supports range requests, a + single consecutive byte range from the content of the + NSD file is returned. + The response body shall contain the requested part of + the NSD file. + The "Content-Range" HTTP header shall be provided + according to IETF RFC 7233 [23]. + The "Content-Type" HTTP header shall be set as + defined above for the "200 OK" response. + headers: + Content-Range: + type: "string" + Content-Type: + type: "string" + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 303: + description: > + See Other + A subscription with the same callbackURI and the same filter already + exists and the policy of the VNFM is to not create redundant + subscriptions. + The HTTP response shall include a "Location" HTTP header that contains + the resource URI of the existing subscription resource. + The response body shall be empty. + 400: + description: > + Bad Request. + + Error: Invalid attribute-based filtering parameters. + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute should convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 400-attr-based-filtering-error: + description: > + Bad Request + Invalid attribute-based filtering parameters or Invalid attribute + selector. + It the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, + and should include in the "detail" attribute more information about + the source of the problem. + If the request contains a malformed access token, the API producer + should respond with this response. The details of the error shall + be returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be + provided. + If there is an application error related to the client's input that + cannot be easily mapped to any other HTTP response code ("catch all + error"), the API producer shall respond with this response code.The + "ProblemDetails" structure shall be provided, and shall include in + the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 400-attr-selector: + description: > + Bad Request + If the request is malformed or syntactically incorrect (e.g. if the + request URI contains incorrect query parameters or a syntactically + incorrect payload body), the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided, + and should include in the "detail" attribute more information about + the source of the problem. + If the request contains a malformed access token, the API producer + should respond with this response. The details of the error shall + be returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails structure may be + provided. + If there is an application error related to the client's input that + cannot be easily mapped to any other HTTP response code ("catch all + error"), the API producer shall respond with this response code.The + "ProblemDetails" structure shall be provided, and shall include in + the "detail" attribute more information about the source of the + problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 401: + description: > + Unauthorized + If the request contains no access token even though one is + required, or if the request contains an authorization token that + is invalid (e.g. expired or revoked), the API producer should + respond with this response. The details of the error shall be + returned in the WWW-Authenticate HTTP header, as defined in + IETF RFC 6750 and IETF RFC 7235. The ProblemDetails + structure may be provided. + headers: + Content-Type: + type: string + description: The MIME type of the body of the response. + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 403: + description: > + Forbidden + If the API consumer is not allowed to perform a particular request + to a particular resource, the API producer shall respond with this + response code. The "ProblemDetails" structure shall be provided. + It should include in the "detail" attribute information about the + source of the problem, and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + The "ProblemDetails" structure may be provided, + including in the "detail" attribute information about the source + of the problem, e.g. a wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-resource-not-exists: + description: > + Not Found + Error: The API producer did not find a current representation for the + target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 shall + also returned if the task is not supported for the NS instance + represented by the parent resource, which means that the task resource + consequently does not exist. + In this case, the response body shall be present, and shall contain a + ProblemDetails structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-resource-not-exists-NSD: + description: > + Not Found + Error: The API producer did not find a current representation for the + target resource or is not willing to disclose that one exists. + Specifically in case of this task resource, the response code 404 shall + also be returned if the task is not supported for the NS Descriptor operation + occurrence represented by the parent resource, which means that the task + resource consequently does not exist. + In this case, the response body shall be present, and shall contain a + ProblemDetails structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-not-suported: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + Specifically in case of this task resource, the reason can also be that + the task is not supported for the NS instance represented by the parent + resource, and that the task resource consequently does not exist. + The "ProblemDetails" structure may be provided, including in the + "detail" attribute information about the sourceof the problem, e.g. a + wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 404-task-not-suported-NSD: + description: > + Not Found + If the API producer did not find a current representation for the + resource addressed by the URI passed in the request, or is not + willing to disclose that one exists, it shall respond with this + response code. + Specifically in case of this task resource, the reason can also be that + the task is not supported for the NS Descriptor operation occurrence + represented by the parent resource, and that the task resource + consequently does not exist. + The "ProblemDetails" structure may be provided, including in the + "detail" attribute information about the sourceof the problem, e.g. a + wrong resource URI variable. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 405: + description: > + Method Not Allowed + If a particular HTTP method is not supported for a particular + resource, the API producer shall respond with this response code. + The "ProblemDetails" structure may be omitted in that case. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 406: + description: > + If the "Accept" header does not contain at least one + name of a content type for which the NFVO can + provide a representation of the VNFD, the NFVO + shall respond with this response code. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 412: + description: > + Precondition Failed + A precondition given in an HTTP request header is not fulfilled. + Typically, this is due to an ETag mismatch, indicating that the + resource was modified by another entity. The response body should + contain a ProblemDetails structure, in which the "detail" attribute + should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 416: + description: > + Requested Range Not Satisfiable + + The byte range passed in the "Range" header did not + match any available byte range in the VNF package + file (e.g. "access after end of file"). + The response body may contain a ProblemDetails structure. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 422: + description: > + Un-processable Entity + If the payload body of a request contains syntactically correct + data (e.g. well-formed JSON) but the data cannot be processed + (e.g. because it fails validation against a schema), the API + producer shall respond with this response code. The + "ProblemDetails" structure shall be provided, and should include + in the "detail" attribute more information about the source of the + problem. + NOTE 2: This error response code is only applicable for methods + that have a request body. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 500: + description: > + Internal Server Error + If there is an application error not related to the client's input + that cannot be easily mapped to any other HTTP response code + ("catch all error"), the API producer shall respond withthis + response code. The ProblemDetails structure shall be provided, + and shall include in the "detail" attribute more information about + the source of the problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 503: + description: > + Service Unavailable + If the API producer encounters an internal overload situation of + itself or of a system it relies on, it should respond with this + response code, following the provisions in IETF RFC 7231 [13] for + the use of the Retry-After HTTP header and for the alternative + to refuse the connection. The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL005/VNFPackageManagement/responses/VNFPackageManagement_resp.yaml b/src/SOL005/VNFPackageManagement/responses/VNFPackageManagement_resp.yaml index 7d7e9d9..84c0f7f 100644 --- a/src/SOL005/VNFPackageManagement/responses/VNFPackageManagement_resp.yaml +++ b/src/SOL005/VNFPackageManagement/responses/VNFPackageManagement_resp.yaml @@ -1,291 +1,291 @@ - # Copyright (c) ETSI 2017. - # https://forge.etsi.org/etsi-forge-copyright-notice.txt - responses: - 202-with-Location: - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. The response body shall be empty. - The HTTP response shall include a "Location" HTTP - header that contains the URI of the newly-created - "NS lifecycle operation occurrence" resource - corresponding to the operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" - 202-with-Location-empty: - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "NS Descriptor operation occurrence" resource corresponding to the - operation. - The response body shall be empty. - headers: - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - 406-state-conflict: - description: > - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact that - "onboardingState" of the VNF package has a value - different from "ONBOARDED". - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409: - description: > - Conflict. - - Error: The operation cannot be executed - currently, due to a conflict with the state of - the resource. - Typically, this is due to any of the following - scenarios: - - Disable a VNF package resource of - hich the operational state is not - ENABLED - - Enable a VNF package resource of - which the operational state is not - DISABLED - The response body shall contain a - ProblemDetails structure, in which the - "detail" attribute shall convey more - information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - - 409-another-nsd-operation-ongoing: - description: > - Conflict. - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that another Descriptor operation is - ongoing. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-inconsistent-state: - description: > - Conflict. - - Another request is in progress that prohibits the fulfilment of - the current request, or the current resource state is inconsistent - with the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-INSTANTIATED: - description: > - Conflict. - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is in - INSTANTIATED state. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-not-FAILED_TEMP: - description: > - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is - not in FAILED_TEMP state, or another error handling action is starting, - such as rollback or fail. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-NOT-INSTANTIATED: - description: > - Conflict. - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is in - NOT-INSTANTIATED state, or that another lifecycle management operation - is ongoing. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-ONBOARDING: - description: > - Conflict. - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact that "onboardingState" - of the VNF package has a value different from "ONBOARDED". - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-ONBOARDING-NOT-CREATED: - description: > - Conflict. - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact that the on boarding - state of the VNF package resource is not CREATED . - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +responses: + 202-with-Location: + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. The response body shall be empty. + The HTTP response shall include a "Location" HTTP + header that contains the URI of the newly-created + "NS lifecycle operation occurrence" resource + corresponding to the operation. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" + 202-with-Location-empty: + description: > + Accepted + + The request was accepted for processing, but the processing has not + been completed. On success, the HTTP response shall include a + "Location" HTTP header that contains the URI of the newly-created + "NS Descriptor operation occurrence" resource corresponding to the + operation. + The response body shall be empty. + headers: + Location: + description: The resource URI of the created NS instance + type: string + format: url + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + 406-state-conflict: + description: > + Error: The operation cannot be executed currently, + due to a conflict with the state of the resource. + Typically, this is due to the fact that + "onboardingState" of the VNF package has a value + different from "ONBOARDED". + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409: + description: > + Conflict. + + Error: The operation cannot be executed + currently, due to a conflict with the state of + the resource. + Typically, this is due to any of the following + scenarios: + - Disable a VNF package resource of + hich the operational state is not + ENABLED + - Enable a VNF package resource of + which the operational state is not + DISABLED + The response body shall contain a + ProblemDetails structure, in which the + "detail" attribute shall convey more + information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 409-another-nsd-operation-ongoing: + description: > + Conflict. + + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that another Descriptor operation is + ongoing. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-inconsistent-state: + description: > + Conflict. + + Another request is in progress that prohibits the fulfilment of + the current request, or the current resource state is inconsistent + with the request. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-INSTANTIATED: + description: > + Conflict. + + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that the NS instance resource is in + INSTANTIATED state. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-not-FAILED_TEMP: + description: > + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that the NS instance resource is + not in FAILED_TEMP state, or another error handling action is starting, + such as rollback or fail. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-NOT-INSTANTIATED: + description: > + Conflict. + + The operation cannot be executed currently, due to a conflict with the + state of the NS instance resource. + Typically, this is due to the fact that the NS instance resource is in + NOT-INSTANTIATED state, or that another lifecycle management operation + is ongoing. + The response body shall contain a ProblemDetails structure, in which the + "detail" attribute should convey more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-ONBOARDING: + description: > + Conflict. + + Error: The operation cannot be executed currently, + due to a conflict with the state of the resource. + Typically, this is due to the fact that "onboardingState" + of the VNF package has a value different from "ONBOARDED". + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 409-state-conflict-ONBOARDING-NOT-CREATED: + description: > + Conflict. + + Error: The operation cannot be executed currently, + due to a conflict with the state of the resource. + Typically, this is due to the fact that the on boarding + state of the VNF package resource is not CREATED . + The response body shall contain a ProblemDetails + structure, in which the "detail" attribute shall convey + more information about the error. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file -- GitLab From 37dd09826f27e6346b1f10cc4d05bd67d230a4cd Mon Sep 17 00:00:00 2001 From: moscatelli Date: Wed, 27 Mar 2019 17:11:11 +0100 Subject: [PATCH 04/93] SOL005_15: href attribute description updated in Link def --- src/SOL005/NSDManagement/definitions/SOL005_def.yaml | 5 ++++- .../NSPerformanceManagement/definitions/SOL005_def.yaml | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/SOL005/NSDManagement/definitions/SOL005_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005_def.yaml index babd0fd..1efc93b 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005_def.yaml @@ -34,7 +34,10 @@ definitions: properties: href: description: > - URI of the referenced resource. + URI of a resource referenced from a notification. + Should be an absolute URI (i.e. a URI that contains {apiRoot}), + however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) + if the {apiRoot} information is not available. type: string format: url DateTime: diff --git a/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml b/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml index d5e5074..f05a8eb 100644 --- a/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml @@ -13,7 +13,10 @@ definitions: properties: href: description: > - URI of the referenced resource. + URI of a resource referenced from a notification. + Should be an absolute URI (i.e. a URI that contains {apiRoot}), + however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) + if the {apiRoot} information is not available. type: string format: url -- GitLab From 000a2d67e3c7d2ea60f28b8aa500ef307c4a3cfa Mon Sep 17 00:00:00 2001 From: moscatelli Date: Wed, 27 Mar 2019 17:27:32 +0100 Subject: [PATCH 05/93] SOL005_16: SOL005 common def file created and NotificationLink common type added --- .../NSDManagement/definitions/SOL005_def.yaml | 15 --------- .../definitions/SOL005_def.yaml | 19 ----------- src/SOL005/definitions/SOL005_def.yaml | 32 +++++++++++++++++++ 3 files changed, 32 insertions(+), 34 deletions(-) create mode 100644 src/SOL005/definitions/SOL005_def.yaml diff --git a/src/SOL005/NSDManagement/definitions/SOL005_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005_def.yaml index 1efc93b..0958571 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005_def.yaml @@ -25,21 +25,6 @@ definitions: description: > String formatted according to IETF RFC 3986. type: string - Link: - description: > - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: > - URI of a resource referenced from a notification. - Should be an absolute URI (i.e. a URI that contains {apiRoot}), - however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) - if the {apiRoot} information is not available. - type: string - format: url DateTime: description: > Date-time stamp. diff --git a/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml b/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml index f05a8eb..32211aa 100644 --- a/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml +++ b/src/SOL005/NSPerformanceManagement/definitions/SOL005_def.yaml @@ -3,35 +3,16 @@ definitions: description: > An identifier with the intention of being globally unique. type: string - - Link: - description: > - This type represents a link to a resource. - type: object - required: - - href - properties: - href: - description: > - URI of a resource referenced from a notification. - Should be an absolute URI (i.e. a URI that contains {apiRoot}), - however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) - if the {apiRoot} information is not available. - type: string - format: url - DateTime: description: > Date-time stamp. Representation: String formatted according to IETF RFC 3339. type: string format: "date-time" - String: description: > This type represents stack of string values type: string - Object: description: > This type represents stack of object values diff --git a/src/SOL005/definitions/SOL005_def.yaml b/src/SOL005/definitions/SOL005_def.yaml new file mode 100644 index 0000000..0fa3546 --- /dev/null +++ b/src/SOL005/definitions/SOL005_def.yaml @@ -0,0 +1,32 @@ +definitions: + Link: + description: > + This type represents a link to a resource. + type: object + required: + - href + properties: + href: + description: > + URI of a resource referenced from a notification. + Should be an absolute URI (i.e. a URI that contains {apiRoot}), + however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) + if the {apiRoot} information is not available. + type: string + format: url + + NotificationLink: + description: > + This type represents a link to a resource in a notification, using an absolute or relative URI. + type: object + required: + - href + properties: + href: + description: > + URI of a resource referenced from a notification. + Should be an absolute URI (i.e. a URI that contains {apiRoot}), + however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) + if the {apiRoot} information is not available. + type: string + format: url \ No newline at end of file -- GitLab From cf032c7d80762b1d04c7eb5079ef16c39ad9ae93 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Wed, 27 Mar 2019 18:06:11 +0100 Subject: [PATCH 06/93] SOL005_18 and SOL005_19: all simple data types added to common def file --- src/SOL005/definitions/SOL005_def.yaml | 184 ++++++++++++++++++++++++- 1 file changed, 183 insertions(+), 1 deletion(-) diff --git a/src/SOL005/definitions/SOL005_def.yaml b/src/SOL005/definitions/SOL005_def.yaml index 0fa3546..608744e 100644 --- a/src/SOL005/definitions/SOL005_def.yaml +++ b/src/SOL005/definitions/SOL005_def.yaml @@ -1,4 +1,151 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt definitions: + Identifier: + description: > + An identifier with the intention of being globally unique. + type: string + + IdentifierInNs: + description: > + An identifier that is unique with respect to a NS. Representation: string of variable length. + type: string + + IdentifierInNsd: + description: > + An identifier that is unique within a NS descriptor. Representation: string of variable length. + type: string + + IdentifierInPnf: + description: > + An Identifier that is unique within respect to a PNF. Representation: string of variable length. + type: string + + IdentifierInVim: + description: > + An identifier maintained by the VIM or other resource provider. + It is expected to be unique within the VIM instance. Representation: string of variable length. + type: string + + DateTime: + description: > + Date-time stamp. + Representation: String formatted according toas defined by the date-time production in IETF RFC 3339. + format: date-time + + Uri: + description: > + String formatted according to IETF RFC 3986. + type: string + format: uri + + Boolean: + description: > + The Boolean is a data type having two values (TRUE and FALSE). + type: boolean + + MacAddress: + description: > + A MAC address. Representation: string that consists of groups of two hexadecimal digits, + separated by hyphens or colons. + type: string + + IpAddress: + description: > + An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal + integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that + consists of groups of zero to four hexadecimal digits, separated by colons. + type: string + format: + - ipv4 + - ipv6 + + IpAddressPrefix: + description: > + An IPV4 or IPV6 address range in CIDR format. For IPV4 address range, refer to IETF RFC 4632 [12]. + For IPV6 address range, refer to IETF RFC 4291. + type: string + + Version: + description: > + A Version. Representation: string of variable length. + type: string + + String: + description: > + A string as defined in IETF RFC 8259. + type: string + + Number: + description: > + A number as defined in IETF RFC 8259. + type: number + + KeyValuePairs: + description: > + This type represents a list of key-value pairs. The order of the pairs in the list is not significant. + In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions + defined in clause 4 of IETF RFC 7159. + type: object + + ProblemDetails: + #SOL005 location: 4.3.5.3-1 + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 [19] is reproduced in this structure. Compared to the + general framework defined in IETF RFC 7807 [19], the "status" and + "detail" attributes are mandated to be included by the present document, + to ensure that the response contains additional textual information about + an error. IETF RFC 7807 [19] foresees extensibility of the + "ProblemDetails" type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to define + additional attributes that provide more information about the error. + The description column only provides some explanation of the meaning to + Facilitate understanding of the design. For a full description, see + IETF RFC 7807 [19]. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 [5] that identifies the + problem type. It is encouraged that the URI provides human-readable + documentation for the problem (e.g. using HTML) when dereferenced. + When this member is not present, its value is assumed to be + "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should not + change from occurrence to occurrence of the problem, except for + purposes of localization. If type is given and other than + "about:blank", this attribute shall also be provided. + A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of the + problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by the origin + server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of the + problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + Link: description: > This type represents a link to a resource. @@ -29,4 +176,39 @@ definitions: however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) if the {apiRoot} information is not available. type: string - format: url \ No newline at end of file + format: url + + ResourceHandle: + description: > + This type represents the information that allows addressing a virtualised resource + that is used by a VNF instance or by an NS instance. Information about the resource + is available from the VIM. + type: object + required: + - resourceId + properties: + vimId: + description: > + Identifier of the VIM under whose control this resource is placed. + This attribute shall be present if VNF-related resource management + in direct mode is applicable. It shall also be present for resources + that are part of an NS instance such as virtual link resources. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifier of the entity responsible for the management of the resource. + This attribute shall only be supported and present when VNF-related resource + management in indirect mode is applicable. + The identification scheme is outside the scope of the present document. + $ref: "#/definitions/Identifier" + resourceId: + description: > + Identifier of the resource in the scope of the VIM or the resource provider. + $ref: "#/definitions/IdentifierInVim" + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or the resource provider. + The value set of the "vimLevelResourceType" attribute is within the scope + of the VIM or the resource provider and can be used as information that + complements the ResourceHandle. + type: string \ No newline at end of file -- GitLab From d054bf35e4deb281caab5a6492e0813837516b5f Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 11:10:01 +0100 Subject: [PATCH 07/93] SOL005_17: ApiVersionInformation data type added to SOL005 common def file --- src/SOL005/definitions/SOL005_def.yaml | 45 +++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) diff --git a/src/SOL005/definitions/SOL005_def.yaml b/src/SOL005/definitions/SOL005_def.yaml index 608744e..044bc38 100644 --- a/src/SOL005/definitions/SOL005_def.yaml +++ b/src/SOL005/definitions/SOL005_def.yaml @@ -211,4 +211,47 @@ definitions: The value set of the "vimLevelResourceType" attribute is within the scope of the VIM or the resource provider and can be used as information that complements the ResourceHandle. - type: string \ No newline at end of file + type: string + + ApiVersionInformation: + description: > + This type represents API version information. + type: object + required: + - uriPrefix + - apiVersions + properties: + uriPrefix: + description: > + Specifies the URI prefix for the API, in the following form + {apiRoot}/{apiName}/{apiMajorVersion}/. + type: string + apiVersions: + description: > + Version(s) supported for the API signalled by the uriPrefix attribute. + type: array + items: + type: object + properties: + version: + description: > + Identifies a supported version. The value of the version attribute shall + be a version identifier as specified in clause 4.6.1. + type: string + required: true + isDeprecated: + description: > + If such information is available, this attribute indicates whether use of the + version signaled by the version attribute is deprecated (true) or not (false). + A deprecated version is still supported by the API producer but is recommended + not to be used any longer. When a version is no longer supported, it does not + appear in the response body. + $ref: "#/definitions/Boolean" + required: false + retirementDate: + description: > + The date and time after which the API version will no longer be supported. + This attribute may be included if the value of the isDeprecated attribute + is set to true and shall be absent otherwise. + $ref: "#/definitions/DateTime" + required: false \ No newline at end of file -- GitLab From a0544659e5336ceb8730ab8f3f2e42f426c0dc41 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 12:27:27 +0100 Subject: [PATCH 08/93] SOL005_28: filter description updated in NSD mgmt GET NS Descriptors --- src/SOL005/NSDManagement/NSDManagement.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index 508e78c..63aa61c 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -44,11 +44,11 @@ paths: required: false type: string description: > - Attribute-based filtering parameters according to clause 4.3.2. - The NFVO shall support receiving filtering parameters as part of the URI query - string. The OSS/BSS may supply filtering parameters. - All attribute names that appear in the NsdInfo and in data types referenced from - it shall be supported in attribute-based filtering parameters. + Attribute-based filtering expression according to clause 4.3.2. + The NFVO shall support receiving this filtering parameter as part + of the URI query string. The OSS/BSS may supply this parameter. + All attribute names that appear in the NsdInfo and in data types + referenced from it shall be supported by the NFVO in the filter expression. - name: all_fields in: query required: false -- GitLab From bcdc75fddc93e2548054e5b145a926beefaf1ff8 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 12:33:50 +0100 Subject: [PATCH 09/93] SOL005_30: filter description updated in NSD mgmt GET PNF descriptors --- src/SOL005/NSDManagement/NSDManagement.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index 63aa61c..c62c040 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -783,11 +783,11 @@ paths: required: false type: string description: > - Attribute-based filtering parameters according to clause 4.3.2. - The NFVO shall support receiving filtering parameters as part of the URI - query string. The OSS/BSS may supply filtering parameters. - All attribute names that appear in the PnfdInfo and in data types referenced - from it shall be supported in attribute-based filtering parameters. + Attribute-based filtering expression according to clause 4.3.2. + The NFVO shall support receiving this filtering parameter as part + of the URI query string. The OSS/BSS may supply this parameter. + All attribute names that appear in the PnfdInfo and in data types + referenced from it shall be supported by the NFVO in the filter expression. - name: all_fields in: query required: false -- GitLab From 69905dc3436616f172cb048dbc7bdcd98449c4cd Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 12:39:11 +0100 Subject: [PATCH 10/93] SOL005_32: PnfdInfo desription updated in GET PNF descriptors --- src/SOL005/NSDManagement/NSDManagement.yaml | 8 +++++++- .../definitions/SOL005NSDescriptorManagement_def.yaml | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index c62c040..c4d019b 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -787,7 +787,7 @@ paths: The NFVO shall support receiving this filtering parameter as part of the URI query string. The OSS/BSS may supply this parameter. All attribute names that appear in the PnfdInfo and in data types - referenced from it shall be supported by the NFVO in the filter expression. + referenced from it shall be supported by the NFVO in the filter expression. - name: all_fields in: query required: false @@ -869,6 +869,12 @@ paths: maximum: 1 minimum: 0 schema: + description: > + Information about zero or more PNF descriptors. + The response body shall contain a representationin an array the representations + of zero or more PNF descriptors, as defined in clause 5.5.2.2. + If the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource, + inclusion of the Link HTTP header in this response shall follow the provisions in clause 4.7.2.3. type: array items: properties: diff --git a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml index 0ad2c99..b151581 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml @@ -136,7 +136,7 @@ definitions: items: $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" - nsdOperationalState: + NsdOperationalState: description: > "New value of the "nsdOperationalState" attribute in "NsdInfo" data type. See note.Permitted values: -- GitLab From f3b770fb3c7ac3bca9fc9ed6bf9f7f74b2dd8172 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 12:49:26 +0100 Subject: [PATCH 11/93] SOL005_34 and SOL005_35: 303 resposne code added to POST Subscriptions and filter description updated in GET Subscriptions --- src/SOL005/NSDManagement/NSDManagement.yaml | 22 +++++++++++++++---- .../NSDManagement/responses/SOL005_resp.yaml | 1 + 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index c4d019b..1513d15 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -1423,11 +1423,11 @@ paths: required: false type: string description: > - Attribute filtering parameters according to clause 4.3.2. - The NFVO shall support receiving attribute filter parameters as part of the URI query - string. The OSS/BSS may supply an attribute filter. + Attribute filtering expression according to clause 4.3.2. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. All attribute names that appear in the NsdmSubscription and in data types referenced - from it shall be supported in attribute filter parameters. + from it shall be supported by the NFVO in the filter expression. - name: nextpage_opaque_marker in: query required: false @@ -1491,6 +1491,13 @@ paths: maximum: 1 minimum: 0 schema: + description: > + The list of subscriptions was queried successfully. + The response body shall contain in an array the representations of all active subscriptions + of the functional block that invokes the method, i.e., zero or more representations of NSD management + subscriptions as defined in clause 5.5.2.8. + If the NFVO supports alternative 2 (paging) according to clause 4.7.2.1 for this resource, + inclusion of the Link HTTP header in this response shall follow the provisions in clause 4.7.2.3. type: array items: properties: @@ -1628,6 +1635,13 @@ paths: minimum: 1 206: $ref: "responses/SOL005_resp.yaml#/responses/206" + 303: + description: > + A subscription with the same callbackURI and the same filter already exits and the policy + of the NFVO is to not create redundant subscriptions. + The HTTP response shall include a "Location" HTTP header that contains the resource URI of + the existing subscription resource. + The response body shall be empty. 400: $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" 401: diff --git a/src/SOL005/NSDManagement/responses/SOL005_resp.yaml b/src/SOL005/NSDManagement/responses/SOL005_resp.yaml index 2169308..ec556a9 100644 --- a/src/SOL005/NSDManagement/responses/SOL005_resp.yaml +++ b/src/SOL005/NSDManagement/responses/SOL005_resp.yaml @@ -67,6 +67,7 @@ responses: type: "string" schema: $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + 303: description: > See Other -- GitLab From c122c033561c8e26738d3b370e8bae0b9976070f Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 14:31:25 +0100 Subject: [PATCH 12/93] SOL005_40: userdDefinedData type changed in KeyValuePairs in PnfdInfo data type --- .../SOL005NSDescriptorManagement_def.yaml | 62 +++++++++---------- 1 file changed, 30 insertions(+), 32 deletions(-) diff --git a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml index b151581..4ca7aae 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml @@ -1,12 +1,12 @@ definitions: NsdInfo: - type: "object" + type: object required: - - "id" - - "nsdOnboardingState" - - "nsdOperationalState" - - "nsdUsageState" - - "_links" + - id + - nsdOnboardingState + - nsdOperationalState + - nsdUsageState + - _links" properties: id: description: > @@ -21,7 +21,7 @@ definitions: present after the NSD content is on-boarded. $ref: "SOL005_def.yaml#/definitions/Identifier" nsdName: - type: "string" + type: string description: > "Name of the on boarded NSD. This information is copied from the NSD content and shall be present after the NSD content is on-boarded." @@ -32,7 +32,7 @@ definitions: after the NSD content is on-boarded. $ref: "SOL005_def.yaml#/definitions/Version" nsdDesigner: - type: "string" + type: string description: > "Designer of the on-boarded NSD. This information is copied from the NSD content and shall be present after the NSD content is on-boarded." @@ -97,23 +97,23 @@ definitions: PATCH method. $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" _links: - type: "object" + type: object required: - - "self" - - "nsd_content" + - self + - nsd_content description: > - "Links to resources related to this resource." + Links to resources related to this resource. properties: self: description: > - "URI of this resource." + URI of this resource. $ref: "SOL005_def.yaml#/definitions/Link" nsd_content: description: > - "Link to the NSD content resource" + Link to the NSD content resource. $ref: "SOL005_def.yaml#/definitions/Link" description: > - "This type represents a response for the query NSD operation." + This type represents a response for the query NSD operation. NsdInfoModifications: type: "object" @@ -483,17 +483,17 @@ definitions: userDefinedData: $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" description: > - "This type represents attribute modifications for an individual PNF + This type represents attribute modifications for an individual PNF descriptor resource based on the "PnfdInfo" data type. The attributes of "PnfdInfo" that can be modified are included in the "PnfdInfoModifications" - data type." + data type. PnfdInfo: - type: "object" + type: object required: - - "id" - - "pnfdOnboardingState" - - "pnfdUsageState" - - "_links" + - id + - pnfdOnboardingState + - pnfdUsageState + - _links properties: id: description: > @@ -513,14 +513,14 @@ definitions: Name of the on-boarded PNFD. This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded. - type: "string" + type: string pnfdersion: $ref: "SOL005_def.yaml#/definitions/Version" pnfdProvider: description: > "Provider of the on-boarded PNFD. This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded." - type: "string" + type: string pnfdInvariantId: description: > Identifies a PNFD in a version independent @@ -543,17 +543,15 @@ definitions: Usage state of the individual PNF descriptor resource. $ref: "#/definitions/PnfdUsageStateType" userDefinedData: - type: "array" description: > User defined data for the individual PNF descriptor resource. This attribute can be modified with the PATCH method. - items: - type: "object" + $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" _links: required: - - "pnfd_content" - - "self" - type: "object" + - pnfd_content + - self + type: object description: > "Links to resources related to this resource." properties: @@ -562,10 +560,10 @@ definitions: pnfd_content: $ref: "SOL005_def.yaml#/definitions/Link" description: > - "This type represents a response for the query PNFD operation." + This type represents a response for the query PNFD operation. PnfdOnboardingStateType: - type: "string" + type: string description: > The enumeration PnfdOnboardingStateType shall comply with the provisions defined in Table 5.5.4.6-1 of GS-NFV SOL005. It indicates the on-boarding state -- GitLab From 56fe8c5ff498195bb2f1d3687a02a0dc294d2b11 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 14:47:17 +0100 Subject: [PATCH 13/93] SOL005_41 -> SOL005_46: subscriptionId added to required properties in NSD mgmt notifications data types --- .../SOL005NSDescriptorManagement_def.yaml | 362 ++++++++++-------- 1 file changed, 193 insertions(+), 169 deletions(-) diff --git a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml index 4ca7aae..d56b004 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml @@ -6,7 +6,7 @@ definitions: - nsdOnboardingState - nsdOperationalState - nsdUsageState - - _links" + - _links properties: id: description: > @@ -23,8 +23,8 @@ definitions: nsdName: type: string description: > - "Name of the on boarded NSD. This information is copied from the - NSD content and shall be present after the NSD content is on-boarded." + Name of the on boarded NSD. This information is copied from the + NSD content and shall be present after the NSD content is on-boarded. nsdVersion: description: > Version of the on-boarded NSD. This information is @@ -34,8 +34,8 @@ definitions: nsdDesigner: type: string description: > - "Designer of the on-boarded NSD. This information is copied - from the NSD content and shall be present after the NSD content is on-boarded." + Designer of the on-boarded NSD. This information is copied + from the NSD content and shall be present after the NSD content is on-boarded. nsdInvariantId: description: > This identifier, which is allocated by the NSD @@ -116,7 +116,7 @@ definitions: This type represents a response for the query NSD operation. NsdInfoModifications: - type: "object" + type: object description: > This type represents attribute modifications for an individual NS descriptor resource based on the NsdInfo data type. The attributes of @@ -132,26 +132,25 @@ definitions: data type. See note. If present, these modifications shall be applied according to the rules of JSON Merge PATCH (see IETF RFC 7396 [25]). NOTE- At least one of the attributes - nsdOperationalState and userDefinedData - shall be present. - type: "array" + type: array items: $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" NsdOperationalState: description: > - "New value of the "nsdOperationalState" attribute in "NsdInfo" + New value of the "nsdOperationalState" attribute in "NsdInfo" data type. See note.Permitted values: - ENABLED, - DISABLED" - type: "array" + ENABLED, DISABLED. + type: array items: $ref: "#/definitions/NsdInfoModifications" NsdmSubscription: - type: "object" + type: object required: - - "id" - - "callbackUri" - - "_links" + - id + - callbackUri + - _links properties: id: description: > @@ -169,7 +168,7 @@ definitions: The URI of the endpoint to send the notification to. $ref: "SOL005_def.yaml#/definitions/Uri" _links: - type: "object" + type: object description: > Links to resources related to this resource. properties: @@ -179,14 +178,14 @@ definitions: This type represents a subscription related to notifications about NSD management. NsdmSubscriptionRequest: - type: "object" + type: object required: - - "callbackUri" + - callbackUri properties: filter: $ref: "#/definitions/NsdmNotificationsFilter" callbackUri: - type: "string" + type: string description: > The URI of the endpoint to send the notification to. authentication: @@ -194,36 +193,37 @@ definitions: description: > This type represents a subscription request related to notifications about NSD management. + NsdmNotificationsFilter: - type: "object" + type: object description: > - "This type represents a subscription filter related to notifications + This type represents a subscription filter related to notifications about NSD management. It shall comply with the provisions defined in Table 5.5.3.2-1 of GS NFV-SOL 005. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the - array matches (logical "or" between the values of one filter attribute)." + array matches (logical "or" between the values of one filter attribute). properties: notificationTypes: description: > - "Match particular notification types. Permitted values: NsdOnBoardingNotification, + Match particular notification types. Permitted values: NsdOnBoardingNotification, NsdOnboardingFailureNotification, NsdChangeNotification, NsdDeletionNotification PnfdOnBoardingNotification, PnfdOnBoardingFailureNotification, PnfdDeletionNotification. The permitted values of the "notificationTypes" ] attribute are spelled exactly as the names of the notification types to facilitate automated - code generation systems." + code generation systems. type: array items: type: string enum: - - "NsdOnBoardingNotification" - - "NsdOnboardingFailureNotification" - - "NsdChangeNotification" - - "NsdDeletionNotification" - - "PnfdOnBoardingNotification" - - "PnfdOnBoardingFailureNotification" - - "PnfdDeletionNotification" + - NsdOnBoardingNotification + - NsdOnboardingFailureNotification + - NsdChangeNotification + - NsdDeletionNotification + - PnfdOnBoardingNotification + - PnfdOnBoardingFailureNotification + - PnfdDeletionNotification nsdInfoId: description: > Match the NsdInfo identifier which is allocated by the NFVO. @@ -250,7 +250,7 @@ definitions: $ref: "SOL005_def.yaml#/definitions/Version" nsdDesigner: description: > - "Match the NSD designer of the on-boarded NSD." + Match the NSD designer of the on-boarded NSD. type: array items: $ref: "SOL005_def.yaml#/definitions/String" @@ -343,6 +343,7 @@ definitions: type: array items: $ref: "#/definitions/PnfdUsageStateType" + SubscriptionAuthentication: description: > The procedure defined in clause 4.5.2 allows an API consumer to @@ -353,9 +354,9 @@ definitions: If an API consumer requires the API producer to authorize for sending notifications to that API consumer, it shall include in the subscription request a data structure that defines the authorization requirements, as defined in Table 4.5.3.4-1. - type: "object" + type: object required: - - "authType" + - authType properties: authType: description: > @@ -386,7 +387,7 @@ definitions: - OAUTH2_CLIENT_CREDENTIALS - TLS_CERT paramsBasic: - type: "object" + type: object description: > Parameters for authentication/authorization using BASIC. Shall be present if authType is "BASIC" and @@ -404,12 +405,12 @@ definitions: Shall be present if it has not been provisioned out of band. type: string paramsOauth2ClientCredentials: - type: "object" + type: object description: > Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS. Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the contained information has not been provisioned out of band. - Shall be absent otherwise + Shall be absent otherwise. properties: clientId: description: > @@ -433,52 +434,56 @@ definitions: $ref: "SOL005_def.yaml#/definitions/Uri" NsdOperationalStateType: - type: "string" + type: string description: > - "The enumeration NsdOperationalStateType shall comply with the provisions + The enumeration NsdOperationalStateType shall comply with the provisions defined in Table 5.5.4.3-1 of GS NFV_SOL 005. It indicates the operational state of the resource. ENABLED = The operational state of the resource is enabled. - DISABLED = The operational state of the resource is disabled." + DISABLED = The operational state of the resource is disabled. enum: - - "ENABLED" - - "DISABLED" + - ENABLED + - DISABLED + NsdOnboardingStateType: - type: "string" + type: string description: > - "The enumeration NsdOnboardingStateType shall comply with the provisions + The enumeration NsdOnboardingStateType shall comply with the provisions defined in Table 5.5.4.5-1 of GS NFV-SOL 005. It indicates the on-boarding state of the NSD. CREATED = The NSD information object is created. UPLOADING = The associated NSD content is being uploaded. PROCESSING = The associated NSD content is being processed, e.g. validation. - ONBOARDED = The associated NSD content is on-boarded." + ONBOARDED = The associated NSD content is on-boarded. enum: - - "CREATED" - - "UPLOADING" - - "PROCESSING" - - "ONBOARDED" + - CREATED + - UPLOADING + - PROCESSING + - ONBOARDED + NsdUsageStateType: - type: "string" + type: string description: > - "The enumeration NsdUsageStateType shall comply with the provisions + The enumeration NsdUsageStateType shall comply with the provisions defined in Table 5.5.4.4-1 of GS NFV-SOL 005. It indicates the usage state of the resource.IN_USE = The resource is in use.NOT_IN_USE = The resource - is not-in-use." + is not-in-use. enum: - - "IN_USE" - - "NOT_IN_USE" + - IN_USE + - NOT_IN_USE + CreateNsdInfoRequest: - type: "object" + type: object properties: userDefinedData: $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" description: > - "This type creates a completely new NS descriptor resource." + This type creates a completely new NS descriptor resource. + PnfdInfoModifications: - type: "object" + type: object required: - - "userDefinedData" + - userDefinedData properties: userDefinedData: $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" @@ -487,6 +492,7 @@ definitions: descriptor resource based on the "PnfdInfo" data type. The attributes of "PnfdInfo" that can be modified are included in the "PnfdInfoModifications" data type. + PnfdInfo: type: object required: @@ -518,8 +524,8 @@ definitions: $ref: "SOL005_def.yaml#/definitions/Version" pnfdProvider: description: > - "Provider of the on-boarded PNFD. This information is copied from - the PNFD content and shall be present after the PNFD content is on-boarded." + Provider of the on-boarded PNFD. This information is copied from + the PNFD content and shall be present after the PNFD content is on-boarded. type: string pnfdInvariantId: description: > @@ -553,7 +559,7 @@ definitions: - self type: object description: > - "Links to resources related to this resource." + Links to resources related to this resource. properties: self: $ref: "SOL005_def.yaml#/definitions/Link" @@ -573,22 +579,24 @@ definitions: PROCESSING = The associated PNFD content is being processed, e.g. validation. ONBOARDED = The associated PNFD content is on-boarded. enum: - - "CREATED" - - "UPLOADING" - - "PROCESSING" - - "ONBOARDING" + - CREATED + - UPLOADING + - PROCESSING + - ONBOARDING + PnfdUsageStateType: - type: "string" + type: string description: > - "The enumeration PnfdUsageStateType shall comply with the provisions + The enumeration PnfdUsageStateType shall comply with the provisions defined in Table 5.5.4.7-1 of GS NFV-SOL005. It indicates the usage state of the resource.IN-USE = The resource is in use.NOT_IN_USE = The resource - is not-in-use." + is not-in-use. enum: - - "IN_USE" - - "NOT_IN_USE" + - IN_USE + - NOT_IN_USE + - CreatePnfdInfoRequest: - type: "object" + type: object properties: userDefinedData: $ref: "SOL005_def.yaml#/definitions/KeyValuePairs" @@ -596,49 +604,53 @@ definitions: User-defined data for the PNF descriptor resource to be created. It shall be present when the user defined data is set for the individual PNF descriptor resource to be created. + NsdmLinks: - type: "object" + type: object required: - - "nsdInfo" - - "subscription" + - nsdInfo + - subscription properties: nsdInfo: $ref: "SOL005_def.yaml#/definitions/Link" subscription: $ref: "SOL005_def.yaml#/definitions/Link" description: > - "This type represents the links to resources that an NSD management - notification can contain." + This type represents the links to resources that an NSD management + notification can contain. + PnfdmLinks: - type: "object" + type: object required: - - "pnfdInfo" - - "subscription" + - pnfdInfo + - subscription properties: pnfdInfo: $ref: "SOL005_def.yaml#/definitions/Link" subscription: $ref: "SOL005_def.yaml#/definitions/Link" description: > - "This type represents the links to resources that a PNFD management - notification can contain." + This type represents the links to resources that a PNFD management + notification can contain. + NsdOnBoardingNotification: - type: "object" + type: object required: - - "_links" - - "id" - - "notificationType" - - "nsdId" - - "nsdInfoId" - - "timeStamp" + - _links + - id + - notificationType + - subscriptionId + - nsdId + - nsdInfoId + - timeStamp properties: id: $ref: "SOL005_def.yaml#/definitions/Identifier" notificationType: - type: "string" + type: string description: > - "Discriminator for the different notification types. Shall be - set to "NsdOnboardingNotification" for this notification type." + Discriminator for the different notification types. Shall be + set to "NsdOnboardingNotification" for this notification type. subscriptionId: $ref: "SOL005_def.yaml#/definitions/Identifier" timeStamp: @@ -652,28 +664,30 @@ definitions: _links: $ref: "#/definitions/NsdmLinks" description: > - "This type represents an NSD management notification, which informs + This type represents an NSD management notification, which informs the receiver of the successful on-boarding of an NSD. It shall comply with the provisions defined in Table 5.5.2.9-1. The support of this notification is mandatory. The notification shall be triggered by the NFVO when the " - nsdOnboardingState" attribute of a new NSD has changed to "ONBOARDED"." + nsdOnboardingState" attribute of a new NSD has changed to "ONBOARDED". + NsdOnBoardingFailureNotification: - type: "object" + type: object required: - - "_links" - - "id" - - "notificationType" - - "nsdInfoId" - - "onboardingFailureDetails" - - "timeStamp" + - _links + - id + - notificationType + - subscriptionId + - nsdInfoId + - onboardingFailureDetails + - timeStamp properties: id: $ref: "SOL005_def.yaml#/definitions/Identifier" notificationType: - type: "string" + type: string description: > - "Discriminator for the different notification types. Shall be - set to "NsdOnboardingFailureNotification" for this notification type." + Discriminator for the different notification types. Shall be + set to "NsdOnboardingFailureNotification" for this notification type. subscriptionId: $ref: "SOL005_def.yaml#/definitions/Identifier" timeStamp: @@ -689,29 +703,31 @@ definitions: _links: $ref: "#/definitions/NsdmLinks" description: > - "This type represents an NSD management notification, which informs + This type represents an NSD management notification, which informs the receiver of the failure of on-boarding an NSD. It shall comply with the provisions defined in Table 5.5.2.10-1. The support of this notification is mandatory. The notification shall be triggered by the NFVO when the on-boarding - of an NSD has failed." + of an NSD has failed. + NsdChangeNotification: - type: "object" + type: object required: - - "_links" - - "id" - - "notificationType" - - "nsdId" - - "nsdInfoId" - - "nsdOperationalState" - - "timeStamp" + - _links + - id + - notificationType + - subscriptionId + - nsdId + - nsdInfoId + - nsdOperationalState + - timeStamp properties: id: $ref: "SOL005_def.yaml#/definitions/Identifier" notificationType: - type: "string" + type: string description: > - "Discriminator for the different notification types. Shall be - set to "NsdChangeNotification" for this notification type." + Discriminator for the different notification types. Shall be + set to "NsdChangeNotification" for this notification type. subscriptionId: $ref: "SOL005_def.yaml#/definitions/Identifier" timeStamp: @@ -727,31 +743,33 @@ definitions: _links: $ref: "#/definitions/NsdmLinks" description: > - "This type represents an NSD management notification, which informs + This type represents an NSD management notification, which informs the receiver of a change of the "nsdOperationalState" attribute of an on-boarded NSD. Changes in the value of the "nsdUsageState" and "nsdOnboardingState" attributes are not reported. The notification shall comply with the provisions defined in Table 5.5.2.11-1. The support of this notification is mandatory. The notification shall be triggered by the NFVO when the value of the "nsdOperationalState" attribute has changed, and the "nsdOperationalState" attribute has the value - "ONBOARDED"." + "ONBOARDED". + NsdDeletionNotification: - type: "object" + type: object required: - - "_links" - - "id" - - "notificationType" - - "nsdId" - - "nsdInfoId" - - "timeStamp" + - _links + - id + - notificationType + - subscriptionId + - nsdId + - nsdInfoId + - timeStamp properties: id: $ref: "SOL005_def.yaml#/definitions/Identifier" notificationType: - type: "string" + type: string description: > - "Discriminator for the different notification types. Shall be - set to "NsdDeletionNotification " for this notification type." + Discriminator for the different notification types. Shall be + set to "NsdDeletionNotification " for this notification type. subscriptionId: $ref: "SOL005_def.yaml#/definitions/Identifier" timeStamp: @@ -765,28 +783,30 @@ definitions: _links: $ref: "#/definitions/NsdmLinks" description: > - "This type represents an NSD management notification, which informs + This type represents an NSD management notification, which informs the receiver of the deletion of an on-boarded NSD. The notification shall comply with the provisions defined in Table 5.5.2.12-1. The support of this notification is mandatory. The notification shall be triggered by the NFVO - when it has deleted an on-boarded NSD." + when it has deleted an on-boarded NSD. + PnfdOnBoardingNotification: - type: "object" + type: object required: - - "_links" - - "id" - - "notificationType" - - "pnfdId" - - "pnfdInfoId" - - "timeStamp" + - _links + - id + - notificationType + - subscriptionId + - pnfdId + - pnfdInfoId + - timeStamp properties: id: $ref: "SOL005_def.yaml#/definitions/Identifier" notificationType: - type: "string" + type: string description: > - "Discriminator for the different notification types. Shall be - set to "PnfdOnboardingNotification" for this notification type." + Discriminator for the different notification types. Shall be + set to "PnfdOnboardingNotification" for this notification type. subscriptionId: $ref: "SOL005_def.yaml#/definitions/Identifier" timeStamp: @@ -800,27 +820,29 @@ definitions: _links: $ref: "#/definitions/PnfdmLinks" description: > - "This type represents a PNFD management notification, which informs + This type represents a PNFD management notification, which informs the receiver of the successful on-boarding of aPNFD. It shall comply with the provisions defined in Table 5.5.2.13-1. The support of this notification - is mandatory. The notification is triggered when a new PNFD is on-boarded." + is mandatory. The notification is triggered when a new PNFD is on-boarded. + PnfdOnBoardingFailureNotification: - type: "object" + type: object required: - - "_links" - - "id" - - "notificationType" - - "onboardingFailureDetails" - - "pnfdInfoId" - - "timeStamp" + - _links + - id + - notificationType + - subscriptionId + - onboardingFailureDetails + - pnfdInfoId + - timeStamp properties: id: $ref: "SOL005_def.yaml#/definitions/Identifier" notificationType: - type: "string" + type: string description: > - "Discriminator for the different notification types. Shall be - set to "PnfdOnboardingFailureNotification" for this notification type." + Discriminator for the different notification types. Shall be + set to "PnfdOnboardingFailureNotification" for this notification type. subscriptionId: $ref: "SOL005_def.yaml#/definitions/Identifier" timeStamp: @@ -836,32 +858,34 @@ definitions: _links: $ref: "#/definitions/PnfdmLinks" description: > - "This type represents a PNFD management notification, which informs + This type represents a PNFD management notification, which informs the receiver of the failure of on-boarding a PNFD. It shall comply with the provisions defined in Table 5.5.2.14-1. The support of this notification is mandatory. The notification is triggered when the on-boarding of a PNFD - fails." + fails. + PnfdDeletionNotification: - type: "object" + type: object required: - - "_links" - - "id" - - "notificationType" - - "pnfdId" - - "pnfdInfoId" - - "timeStamp" + - _links + - id + - notificationType + - subscriptionId + - pnfdId + - pnfdInfoId + - timeStamp properties: id: - type: "string" + type: string description: > - "Identifier of this notification. If a notification is sent multiple + Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value." + notifications shall have the same value. notificationType: - type: "string" + type: string description: > - "Discriminator for the different notification types. Shall be - set to "PnfdDeletionNotification " for this notification type." + Discriminator for the different notification types. Shall be + set to "PnfdDeletionNotification " for this notification type. subscriptionId: $ref: "SOL005_def.yaml#/definitions/Identifier" timeStamp: @@ -875,8 +899,8 @@ definitions: _links: $ref: "#/definitions/PnfdmLinks" description: > - "This type represents a PNFD management notification, which informs + This type represents a PNFD management notification, which informs the receiver of the deletion of an on-boarded PNFD. The notification shall comply with the provisions defined in Table 5.5.2.15-1. The support of this notification is mandatory. The notification is triggered when an on-boarded - PNFD is deleted." \ No newline at end of file + PNFD is deleted. \ No newline at end of file -- GitLab From 94da44d2db95d53a8a5fbdeccbff642339d63cbd Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 14:57:36 +0100 Subject: [PATCH 14/93] SOL005_47 -> SOL005_50: Link replaced with NotificationLink in NsdmLinks and PnfdmLinks data types --- .../definitions/SOL005NSDescriptorManagement_def.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml index d56b004..6b76d44 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml @@ -612,9 +612,9 @@ definitions: - subscription properties: nsdInfo: - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" subscription: - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" description: > This type represents the links to resources that an NSD management notification can contain. @@ -626,9 +626,9 @@ definitions: - subscription properties: pnfdInfo: - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" subscription: - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" description: > This type represents the links to resources that a PNFD management notification can contain. -- GitLab From 41f3285ab4cd740e2c8f53035550025f5619dc6c Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 15:04:18 +0100 Subject: [PATCH 15/93] SOL005_95: filter description updated in GET Pm Jobs --- .../NSPerformanceManagement/NSPerformanceManagement.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml index 029f41c..b15129d 100644 --- a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml +++ b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml @@ -143,11 +143,11 @@ paths: required: false type: string description: > - Attribute-based filtering parameters according to clause 4.3.2. - The NFVO shall support receiving filtering parameters as part of the URI query string. - The OSS/BSS may supply filtering parameters. + Attribute-based filtering expression according to clause 4.3.2. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. All attribute names that appear in the PmJob and in data types referenced from it - shall be supported in attribute-based filtering parameters. + shall be supported by the NFVO in the filter expression. - name: all_fields in: query required: false -- GitLab From d0d122696315b8cecd05147122ecb14908c8a051 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 15:06:32 +0100 Subject: [PATCH 16/93] SOL005_98: filter description updated in GET Thresholds --- .../NSPerformanceManagement.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml index b15129d..b9c9d54 100644 --- a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml +++ b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml @@ -147,7 +147,7 @@ paths: The NFVO shall support receiving this parameter as part of the URI query string. The OSS/BSS may supply this parameter. All attribute names that appear in the PmJob and in data types referenced from it - shall be supported by the NFVO in the filter expression. + shall be supported by the NFVO in the filter expression. - name: all_fields in: query required: false @@ -618,11 +618,11 @@ paths: required: false type: string description: > - Attribute-based filtering parameters according to clause 4.3.2. - The NFVO shall support receiving filtering parameters as part of the URI query string. - The OSS/BSS may supply filtering parameters. - All attribute names that appear in the Thresholds data type and in data types - referenced from it shall be supported in attribute-based filtering parameters. + Attribute-based filtering expression according to clause 4.3.2. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the Thresholds data type and in data types referenced from it + shall be supported by the NFVO in the filter expression. - name: nextpage_opaque_marker in: query required: false -- GitLab From 3b5b4b3d1e0e863a95f8c7c6f26d9966498a2d5a Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 15:08:14 +0100 Subject: [PATCH 17/93] SOL005_101: filter description updated in GET Subscriptions --- .../NSPerformanceManagement.yaml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml index b9c9d54..581f35d 100644 --- a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml +++ b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml @@ -981,12 +981,11 @@ paths: required: false type: string description: > - Attribute-based filtering parameters according to clause 4.3.2. - The NFVO shall support receiving filtering parameters as part of the URI - query string. The OSS/BSS may supply filtering parameters. - All attribute names that appear in the PmSubscription and in data types - referenced from it shall be supported in attribute-based filtering - parameters. + Attribute-based filtering expression according to clause 4.3.2. + The NFVO shall support receiving this parameter as part of the URI query string. + The OSS/BSS may supply this parameter. + All attribute names that appear in the PmSubscription and in data types referenced from it + shall be supported by the NFVO in the filter expression. - name: nextpage_opaque_marker in: query required: false -- GitLab From f276e7e4f29eb77c32bdf356e6e23b6515859a37 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 15:14:24 +0100 Subject: [PATCH 18/93] SOL005_104 -> SOL005_108: ThresholdCrossedNotification data type updated --- .../NSPerformanceManagement.yaml | 2 +- .../SOL005NSPerfomananceManagement_def.yaml | 12 ++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml index 581f35d..40aee10 100644 --- a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml +++ b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml @@ -985,7 +985,7 @@ paths: The NFVO shall support receiving this parameter as part of the URI query string. The OSS/BSS may supply this parameter. All attribute names that appear in the PmSubscription and in data types referenced from it - shall be supported by the NFVO in the filter expression. + shall be supported by the NFVO in the filter expression. - name: nextpage_opaque_marker in: query required: false diff --git a/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml b/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml index e435df1..e376aac 100644 --- a/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml +++ b/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml @@ -516,10 +516,14 @@ definitions: performanceMetric: description: > Performance metric associated with the threshold. + This attribute shall contain the related "Measurement Name" value + as defined in clause 7.2 of ETSI GS NFV-IFA 027. type: string performanceValue: description: > - Value of the metric that resulted in threshold crossing. See note. + Value of the metric that resulted in threshold crossing. + The type of this attribute shall correspond to the related + "Measurement Unit" as defined in clause 7.2 of ETSI GS NFV-IFA 027. type: object _links: description: > @@ -533,19 +537,19 @@ definitions: subscription: description: > Link to the related subscription. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" objectInstance: description: > Link to the resource representing the NS instance to which the notified change applies. Shall be present if the NS instance information is accessible as a resource.. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" threshold: description: > Link to the resource that represents the threshold that was crossed. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" CrossingDirectionType: description: > -- GitLab From 6b2599e23d15c34c7eaadbd5aa96de8bd84521ed Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 15:18:33 +0100 Subject: [PATCH 19/93] SOL005_105 -> SOL005_112: PerformanceInformationAvailableNotification data type updated --- .../definitions/SOL005NSPerfomananceManagement_def.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml b/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml index e376aac..ec1f70e 100644 --- a/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml +++ b/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerfomananceManagement_def.yaml @@ -441,19 +441,19 @@ definitions: subscription: description: > Link to the related subscription. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" objectInstance: description: > Link to the resource representing the NS instance to which the notified change applies. Shall be present if the NS instance information is accessible as a resource. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" pmJob: description: > Link to the resource that represents the PM job for which performance information is available. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" performanceReport: description: > Link from which the available performance @@ -462,7 +462,7 @@ definitions: This link should point to an "Individual performance report" resource as defined in clause 6.4.3a. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" ThresholdCrossedNotification: description: > -- GitLab From e0b3181f23ba5da8eff26999924ecb5e2c21ef32 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 16:18:55 +0100 Subject: [PATCH 20/93] SOL005 common responses file created --- src/SOL005/responses/SOL005_resp.yaml | 414 ++++++++++++++++++++++++++ 1 file changed, 414 insertions(+) create mode 100644 src/SOL005/responses/SOL005_resp.yaml diff --git a/src/SOL005/responses/SOL005_resp.yaml b/src/SOL005/responses/SOL005_resp.yaml new file mode 100644 index 0000000..aca71fd --- /dev/null +++ b/src/SOL005/responses/SOL005_resp.yaml @@ -0,0 +1,414 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +responses: + 400: + description: > + BAD REQUEST + If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect + query parameters or the payload body contains a syntactically incorrect data structure), + the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, + and should include in the "detail" attribute more information about the source of the problem. + + If the response to a GET request which queries a container resource would be so big that the performance + of the API producer is adversely affected, and the API producer does not support paging for the affected resource, + it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include + in the "detail" attribute more information about the source of the problem. + + If there is an application error related to the client's input that cannot be easily mapped to any other + HTTP response code ("catch all error"), the API producer shall respond with this response code. + The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information + about the source of the problem. + + If the request contains a malformed access token, the API producer should respond with this response. + The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 + and IETF RFC 7235. The ProblemDetails structure may be provided. + + The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 + for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 401: + description: > + UNAUTHORIZED + If the request contains no access token even though one is required, or if the request contains an authorization + token that is invalid (e.g. expired or revoked), the API producer should respond with this response. + The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 + and IETF RFC 7235. The ProblemDetails structure may be provided. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 403: + description: > + FORBIDDEN + If the API consumer is not allowed to perform a particular request to a particular resource, + the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. + It should include in the "detail" attribute information about the source of the problem, + and may indicate how to solve it. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 404: + description: > + NOT FOUND + If the API producer did not find a current representation for the resource addressed by the URI passed + in the request or is not willing to disclose that one exists, it shall respond with this response code. + The "ProblemDetails" structure may be provided, including in the "detail" attribute information about + the source of the problem, e.g. a wrong resource URI variable. + + This response code is not appropriate in case the resource addressed by the URI is a container resource + which is designed to contain child resources, but does not contain any child resource at the time + the request is received. For a GET request to an existing empty container resource, a typical response + contains a 200 OK response code and a payload body with an empty array. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 405: + description: > + METHOD NOT ALLOWED + If a particular HTTP method is not supported for a particular resource, the API producer shall respond + with this response code. The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 406: + description: > + NOT ACCEPTABLE + If the "Accept" header does not contain at least one name of a content type that is acceptable + to the API producer, the API producer shall respond with this response code. + The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 413: + description: > + PAYLOAD TOO LARGE + If the payload body of a request is larger than the amount of data the API producer is willing or able to process, + it shall respond with this response code, following the provisions in IETF RFC 7231 for the use + of the "Retry-After" HTTP header and for closing the connection. The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 414: + description: > + URI TOO LONG + If the request URI of a request is longer than the API producer is willing or able to process, + it shall respond with this response code. This condition can e.g. be caused by passing long queries + in the request URI of a GET request. The "ProblemDetails" structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 422: + description: > + UNPROCESSABLE ENTITY + If the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data + cannot be processed (e.g. because it fails validation against a schema), the API producer shall respond + with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" + attribute more information about the source of the problem. + + This error response code is only applicable for methods that have a request body. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 429: + description: > + TOO MANY REQUESTS + If the API consumer has sent too many requests in a defined period of time and the API producer is able + to detect that condition ("rate limiting"), the API producer shall respond with this response code, + following the provisions in IETF RFC 6585 [17] for the use of the "Retry-After" HTTP header. + The "ProblemDetails" structure shall be provided and shall include in the "detail" attribute more information + about the source of the problem. + + The period of time and allowed number of requests are configured within the API producer by means + outside the scope of the present document. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 500: + description: > + INTERNAL SERVER ERROR + If there is an application error not related to the client's input that cannot be easily mapped to any other + HTTP response code ("catch all error"), the API producer shall respond with this response code. + The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information + about the source of the problem. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 503: + description: > + SERVICE UNAVAILABLE + If the API producer encounters an internal overload situation of itself or of a system it relies on, + it should respond with this response code, following the provisions in IETF RFC 7231 for the use of + the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" + structure may be omitted. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + + 504: + description: > + GATEWAY TIMEOUT + If the API producer encounters a timeout while waiting for a response from an upstream server + (i.e. a server that the API producer communicates with when fulfilling a request), it should respond + with this response code. + headers: + Content-Type: + description: The MIME type of the body of the response. + type: string + maximum: 1 + minimum: 1 + WWW-Authenticate: + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP + request has provided an invalid authorization token. + type: string + maximum: 1 + minimum: 0 + Version: + description: > + Version of the API used in the response. + type: string + maximum: 1 + minimum: 1 + schema: + $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" \ No newline at end of file -- GitLab From 3363ad7976e6afc3794caa5805e773bd5f3baa98 Mon Sep 17 00:00:00 2001 From: moscatelli Date: Thu, 28 Mar 2019 18:06:52 +0100 Subject: [PATCH 21/93] NSD mgmt referenced to common response codes updated --- src/SOL005/NSDManagement/NSDManagement.yaml | 782 ++++++++---------- .../NSDescriptorManagement_resp.yaml | 292 ------- .../SOL005NSDescriptorManagement_resp.yaml | 172 ++++ src/SOL005/responses/SOL005_resp.yaml | 52 +- 4 files changed, 561 insertions(+), 737 deletions(-) delete mode 100644 src/SOL005/NSDManagement/responses/NSDescriptorManagement_resp.yaml create mode 100644 src/SOL005/NSDManagement/responses/SOL005NSDescriptorManagement_resp.yaml diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index 1513d15..8d1f249 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -1,8 +1,8 @@ -swagger: "2.0" +swagger: 2.0 info: - version: "1.0.0" - title: "SOL005 - NSD Management Interface" + version: 1.0.0 + title: SOL005 - NSD Management Interface description: > SOL005 - NSD Management Interface IMPORTANT: Please note that this file might be not aligned to the current @@ -11,26 +11,27 @@ info: Group Specification takes precedence. Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis license: - name: "ETSI Forge copyright notice" + name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt contact: - name: "NFV-SOL WG" + name: NFV-SOL WG externalDocs: description: ETSI GS NFV-SOL 005 V2.4.1 url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf -basePath: "/nsd/v1" +basePath: /nsd/v1 schemes: - https consumes: - - "application/json" + - application/json produces: - - "application/json" + - application/json paths: ############################################################################### # NS Descriptors # ############################################################################### '/ns_descriptors': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.2 + get: summary: Query information about multiple NS descriptor resources. description: > @@ -146,31 +147,30 @@ paths: schema: type: array items: - properties: - NsdInfo: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" + post: summary: Create a new NS descriptor resource. description: > @@ -203,16 +203,11 @@ paths: in: header required: true type: string - - name: body + - name: CreateNsdInfoRequest in: body required: true schema: - type: object - required: - - CreateNsdInfoRequest - properties: - CreateNsdInfoRequest: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreateNsdInfoRequest" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreateNsdInfoRequest" description: > Parameters of creating an NS descriptor resource, as defined in clause 5.5.2.3 responses: @@ -227,10 +222,7 @@ paths: HTTP header that contains the resource URI of the new NS descriptor resource. schema: - type: object - properties: - NsdInfo: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" headers: Content-Type: type: string @@ -253,27 +245,27 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" ############################################################################### # Individual NS Descriptor # @@ -287,6 +279,7 @@ paths: in: path required: true type: string + get: summary: Read information about an individual NS descriptor resource. description: > @@ -324,10 +317,7 @@ paths: The response body shall contain a representation of the individual NS descriptor. schema: - type: object - properties: - NsdInfo: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo" headers: Content-Type: type: string @@ -349,27 +339,28 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" + patch: summary: Modify the operational state and/or the user defined data of an individual NS descriptor resource. description: > @@ -383,16 +374,11 @@ paths: The usage state (i.e. "IN_USE/NOT_IN_USE") shall not changes a result. 3) Modify the user defined data of an individual NS descriptor resource. parameters: - - name: body + - name: NsdInfoModifications in: body required: true schema: - type: object - required: - - NsdInfoModifications - properties: - NsdInfoModifications: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfoModifications" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfoModifications" description: > Parameters for the modification of an individual NS descriptor resource. - name: Authorization @@ -445,33 +431,29 @@ paths: maximum: 1 minimum: 1 schema: - type: array - items: - properties: - NsdInfoModifications: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfoModifications" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfoModifications" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" delete: summary: Delete an individual NS descriptor resource. @@ -484,7 +466,7 @@ paths: - name: Authorization description: > The authorization token for the request. - Reference: IETF RFC 7235 + Reference: IETF RFC 7235. in: header required: false type: string @@ -517,27 +499,27 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" ############################################################################### @@ -637,29 +619,29 @@ paths: maximum: 1 minimum: 1 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-nsd-onboarding-state-NOT-ONBOARDED" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" put: summary: Upload the content of a NSD. @@ -742,29 +724,29 @@ paths: The NSD content was successfully uploaded and validated (synchronous mode). The response body shall be empty. 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-nsd-onboarding-state-NOT-ONBOARDED" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" ############################################################################### @@ -772,6 +754,7 @@ paths: ############################################################################### '/pnf_descriptors': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.5 + get: summary: Query information about multiple PNF descriptor resources. description: > @@ -877,31 +860,30 @@ paths: inclusion of the Link HTTP header in this response shall follow the provisions in clause 4.7.2.3. type: array items: - properties: - PnfdInfo: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" + post: summary: Create a new PNF descriptor resource. description: > @@ -910,34 +892,29 @@ paths: - name: Accept description: > Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string - name: Authorization description: > The authorization token for the request. - Reference: IETF RFC 7235 + Reference: IETF RFC 7235. in: header required: false type: string - name: Content-Type description: > The MIME type of the body of the request. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string - - name: body + - name: CreatePnfdInfoRequest in: body required: true schema: - type: object - required: - - CreatePnfdInfoRequest - properties: - CreatePnfdInfoRequest: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreatePnfdInfoRequest" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreatePnfdInfoRequest" description: > Parameters of creating a PNF descriptor resource. - name: Version @@ -959,10 +936,7 @@ paths: header that contains the resource URI of the new PNF descriptor resource. schema: - type: object - properties: - PnfdInfo: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo" headers: Content-Type: type: string @@ -985,29 +959,30 @@ paths: maximum: 1 minimum: 1 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" + ############################################################################### # Individual PNF Descriptor # ############################################################################### @@ -1020,6 +995,7 @@ paths: in: path required: true type: string + get: summary: Read an individual PNFD resource. description: > @@ -1078,32 +1054,29 @@ paths: maximum: 1 minimum: 1 schema: - type: object - properties: - PnfdInfo: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" delete: summary: Delete an individual PNF descriptor resource. description: > @@ -1121,29 +1094,30 @@ paths: The operation has completed successfully. The response body shall be empty. 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" + patch: summary: Modify the user defined data of an individual PNF descriptor resource. description: > @@ -1176,16 +1150,11 @@ paths: in: header required: true type: string - - name: body + - name: PnfdInfoModifications in: body required: true schema: - type: object - required: - - PnfdInfoModifications - properties: - PnfdInfoModifications: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications" description: > Parameters for the modification of an individual PNF descriptor resource, as defined in clause 5.5.2.4. responses: @@ -1197,10 +1166,7 @@ paths: The response body shall contain attribute modifications for an 'Individual PNF Descriptor' resource. schema: - type: object - properties: - PnfdInfoModifications: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications" headers: Content-Type: type: string @@ -1223,29 +1189,29 @@ paths: maximum: 1 minimum: 1 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" ############################################################################### @@ -1260,6 +1226,7 @@ paths: in: path required: true type: string + get: summary: Fetch the content of a PNFD. description: > @@ -1318,29 +1285,29 @@ paths: maximum: 1 minimum: 1 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-pnfd-onboarding-state-NOT-ONBOARDED" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" put: summary: Upload the content of a PNFD. description: > @@ -1377,35 +1344,36 @@ paths: The PNFD content was successfully uploaded and validated. The response body shall be empty. 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409-pnfd-onboarding-state-NOT-CREATED" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" ############################################################################### # Subscriptions # ############################################################################### '/subscriptions': #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.8 + get: summary: Query multiple subscriptions. description: > @@ -1500,9 +1468,7 @@ paths: inclusion of the Link HTTP header in this response shall follow the provisions in clause 4.7.2.3. type: array items: - properties: - NsdmSubscription: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" 303: description: > 303 See Other. @@ -1514,29 +1480,29 @@ paths: subscription resource. The response body shall be empty. 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" post: summary: Subscribe to NSD and PNFD change notifications. @@ -1562,21 +1528,21 @@ paths: - name: Accept description: > Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string - name: Authorization description: > The authorization token for the request. - Reference: IETF RFC 7235 + Reference: IETF RFC 7235. in: header required: false type: string - name: Content-Type description: > The MIME type of the body of the request. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string @@ -1586,16 +1552,11 @@ paths: in: header required: true type: string - - name: body + - name: NsdmSubscriptionRequest in: body required: true schema: - type: object - required: - - NsdmSubscriptionRequest - properties: - NsdmSubscriptionRequest: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscriptionRequest" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscriptionRequest" description: > Details of the subscription to be created, as defined in clause 5.5.2.7. responses: @@ -1608,10 +1569,7 @@ paths: The HTTP response shall include a "Location:" HTTP header that points to the created subscription resource. schema: - type: object - properties: - NsdmSubscription: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" headers: Content-Type: type: string @@ -1634,36 +1592,31 @@ paths: maximum: 1 minimum: 1 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/206" 303: - description: > - A subscription with the same callbackURI and the same filter already exits and the policy - of the NFVO is to not create redundant subscriptions. - The HTTP response shall include a "Location" HTTP header that contains the resource URI of - the existing subscription resource. - The response body shall be empty. + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/303" 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" ############################################################################### # Individual Subscription # @@ -1676,6 +1629,7 @@ paths: in: path required: true type: string + get: summary: Read an individual subscription resource. description: > @@ -1719,10 +1673,7 @@ paths: The response body shall contain a representation of the subscription resource. schema: - type: object - properties: - NsdmSubscription: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription" headers: Content-Type: type: string @@ -1744,27 +1695,28 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" + delete: summary: Terminate Subscription description: > @@ -1798,27 +1750,27 @@ paths: The subscription resource was deleted successfully. The response body shall be empty. 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/412" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" ################################################################################## # Notification endpoint # @@ -1826,7 +1778,8 @@ paths: # In real, resource URI is provided by the client when creating the subscription.# ################################################################################## '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdOnBoardingNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + post: summary: Notify about NSD and PNFD changes description: > @@ -1845,9 +1798,7 @@ paths: in: body required: true schema: - properties: - NsdOnBoardingNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -1897,28 +1848,29 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdOnBoardingFailureNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + post: summary: Notify about NSD and PNFD changes description: > @@ -1937,27 +1889,25 @@ paths: in: body required: true schema: - properties: - NsdOnBoardingFailureNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingFailureNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingFailureNotification" - name: Accept description: > Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string - name: Authorization description: > The authorization token for the request. - Reference: IETF RFC 7235 + Reference: IETF RFC 7235. in: header required: false type: string - name: Content-Type description: > The MIME type of the body of the request. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string @@ -1989,29 +1939,29 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - + $ref: "../responses/SOL005_resp.yaml#/responses/503" '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdChangeNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + post: summary: Notify about NSD and PNFD changes description: > @@ -2030,9 +1980,7 @@ paths: in: body required: true schema: - properties: - NsdChangeNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdChangeNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdChangeNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -2082,28 +2030,29 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdDeletionNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + post: summary: Notify about NSD and PNFD changes description: > @@ -2122,9 +2071,7 @@ paths: in: body required: true schema: - properties: - NsdDeletionNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdDeletionNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdDeletionNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -2174,28 +2121,29 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" '/URI_is_provided_by_the_client_when_creating_the_subscription-PnfdOnBoardingNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + post: summary: Notify about NSD and PNFD changes description: > @@ -2214,9 +2162,7 @@ paths: in: body required: true schema: - properties: - PnfdOnBoardingNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdOnBoardingNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdOnBoardingNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -2266,28 +2212,29 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" '/URI_is_provided_by_the_client_when_creating_the_subscription-PnfdOnBoardingFailureNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + post: summary: Notify about NSD and PNFD changes description: > @@ -2306,9 +2253,7 @@ paths: in: body required: true schema: - properties: - PnfdOnBoardingFailureNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdOnBoardingFailureNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdOnBoardingFailureNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -2358,28 +2303,29 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" '/URI_is_provided_by_the_client_when_creating_the_subscription-PnfdDeletionNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + post: summary: Notify about NSD and PNFD changes description: > @@ -2398,9 +2344,7 @@ paths: in: body required: true schema: - properties: - PnfdDeletionNotification: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdDeletionNotification" + $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdDeletionNotification" - name: Accept description: > Content-Types that are acceptable for the response. @@ -2450,25 +2394,25 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" + $ref: "../responses/SOL005_resp.yaml#/responses/503" get: summary: Test the notification endpoint @@ -2485,14 +2429,14 @@ paths: - name: Accept description: > Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 + Reference: IETF RFC 7231. in: header required: true type: string - name: Authorization description: > The authorization token for the request. - Reference: IETF RFC 7235 + Reference: IETF RFC 7235. in: header required: false type: string @@ -2525,22 +2469,22 @@ paths: maximum: 1 minimum: 1 400: - $ref: "responses/SOL005_resp.yaml#/responses/400-attr-selector" + $ref: "../responses/SOL005_resp.yaml#/responses/400" 401: - $ref: "responses/SOL005_resp.yaml#/responses/401" + $ref: "../responses/SOL005_resp.yaml#/responses/401" 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/404" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 409: - $ref: "responses/NSDescriptorManagement_resp.yaml#/responses/409" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "responses/SOL005NSDescriptorManagement_resp.yaml#/responses/416" 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" + $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" \ No newline at end of file + $ref: "../responses/SOL005_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL005/NSDManagement/responses/NSDescriptorManagement_resp.yaml b/src/SOL005/NSDManagement/responses/NSDescriptorManagement_resp.yaml deleted file mode 100644 index a7c7ea8..0000000 --- a/src/SOL005/NSDManagement/responses/NSDescriptorManagement_resp.yaml +++ /dev/null @@ -1,292 +0,0 @@ -responses: - 202-with-Location: - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. The response body shall be empty. - The HTTP response shall include a "Location" HTTP - header that contains the URI of the newly-created - "NS lifecycle operation occurrence" resource - corresponding to the operation. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" - 202-with-Location-empty: - description: > - Accepted - - The request was accepted for processing, but the processing has not - been completed. On success, the HTTP response shall include a - "Location" HTTP header that contains the URI of the newly-created - "NS Descriptor operation occurrence" resource corresponding to the - operation. - The response body shall be empty. - headers: - Location: - description: The resource URI of the created NS instance - type: string - format: url - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - 409: - description: > - Conflict - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact the NS descriptor - resource is in the enabled operational state (i.e. - operationalState = ENABLED) or there are running - NS instances using the concerned individual NS - descriptor resource (i.e. usageState = IN_USE). - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-another-nsd-operation-ongoing: - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that another Descriptor operation is - ongoing. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-inconsistent-state: - description: > - Conflict - - Another request is in progress that prohibits the fulfillment of - the current request, or the current resource state is inconsistent - with the request. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-INSTANTIATED: - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is in - INSTANTIATED state. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-not-FAILED_TEMP: - description: > - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is - not in FAILED_TEMP state, or another error handling action is starting, - such as rollback or fail. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-state-conflict-NOT-INSTANTIATED: - description: > - Conflict - - The operation cannot be executed currently, due to a conflict with the - state of the NS instance resource. - Typically, this is due to the fact that the NS instance resource is in - NOT-INSTANTIATED state, or that another lifecycle management operation - is ongoing. - The response body shall contain a ProblemDetails structure, in which the - "detail" attribute should convey more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-nsd-onboarding-state-NOT-ONBOARDED: - description: > - Conflict - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact "nsdOnboardingState" - has a value different from ONBOARDED. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-pnfd-onboarding-state-NOT-ONBOARDED: - description: > - Conflict - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this is due to the fact pnfdOnboardingState - has a value different from ONBOARDED. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP - request has provided an invalid authorization token. - type: string - maximum: 1 - minimum: 0 - schema: - $ref: "../definitions/SOL005_def.yaml#/definitions/ProblemDetails" - 409-pnfd-onboarding-state-NOT-CREATED: - description: > - Conflict. - - Error: The operation cannot be executed currently, - due to a conflict with the state of the resource. - Typically, this