diff --git a/src/SOL005/APIVersion/APIVersion.yaml b/src/SOL005/APIVersion/APIVersion.yaml index c948404d8c18218ff9576a3264049f453d8da589..d819757d961c0fdcf9a898cffe6ed4db872325bf 100644 --- a/src/SOL005/APIVersion/APIVersion.yaml +++ b/src/SOL005/APIVersion/APIVersion.yaml @@ -17,7 +17,6 @@ info: externalDocs: description: ETSI GS NFV-SOL 005 V2.5.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf -basePath: /{apiName} schemes: - http - https @@ -29,51 +28,17 @@ paths: ############################################################################### # API Versions # ############################################################################### - '/api-versions': - get: - summary: Retrieve API version information - description: > - The GET method reads API version information. This method shall follow the provisions specified in - table 4.6.3.3.3.2-1 for request and response data structures, and response codes. URI query parameters are not - supported. - parameters: - - name: Version - description: > - Version of the API requested to use when responding to this request. - in: header - required: false - type: string - responses: - 200: - description: > - 200 OK + '/nsd/api-versions': + $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' - API version information was read successfully. - The response body shall contain API version information, as defined in clause 4.4.1.7. - schema: - $ref: '../definitions/SOL005_def.yaml#/definitions/ApiVersionInformation' - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - Version: - description: The used API version. - 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' } - 404: { $ref: '../responses/SOL005_resp.yaml#/responses/404' } - 405: { $ref: '../responses/SOL005_resp.yaml#/responses/405' } - 406: { $ref: '../responses/SOL005_resp.yaml#/responses/406' } - 413: { $ref: '../responses/SOL005_resp.yaml#/responses/413' } - 414: { $ref: '../responses/SOL005_resp.yaml#/responses/414' } - 416: { $ref: '../responses/SOL005_resp.yaml#/responses/416' } - 422: { $ref: '../responses/SOL005_resp.yaml#/responses/422' } - 429: { $ref: '../responses/SOL005_resp.yaml#/responses/429' } - 500: { $ref: '../responses/SOL005_resp.yaml#/responses/500' } - 503: { $ref: '../responses/SOL005_resp.yaml#/responses/503' } - 504: { $ref: '../responses/SOL005_resp.yaml#/responses/504' } \ No newline at end of file + '/nsfm/api-versions': + $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' + + '/nslcm/api-versions': + $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' + + '/nspm/api-versions': + $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' + + '/vnfpkgm/api-versions': + $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' \ No newline at end of file diff --git a/src/SOL005/NSDManagement/NSDManagement.yaml b/src/SOL005/NSDManagement/NSDManagement.yaml index 05c09b7cbae1cee2bd9051d41262b4273f3d4f9a..83cfa557ddd25dba5ad8a95b95a219f723f00f9c 100644 --- a/src/SOL005/NSDManagement/NSDManagement.yaml +++ b/src/SOL005/NSDManagement/NSDManagement.yaml @@ -1631,1032 +1631,5 @@ paths: $ref: "../responses/SOL005_resp.yaml#/responses/406" 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.# - ################################################################################## - '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdOnBoardingNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 - parameters: - - 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 - - post: - summary: Notify about NSD and PNFD changes - 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 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 - specified in the Table 5.4.10.3.1-2. - parameters: - - name: NsdOnBoardingNotification - description: > - A notification about the successful on-boarding of an NSD. - in: body - required: true - schema: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231. - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231. - in: header - required: true - type: string - responses: - 204: - description: > - 204 NO CONTENT - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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, - 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 - responses: - 204: - description: > - 204 NO CONTENT - - The notification endpoint was tested successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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-NsdOnBoardingFailureNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 - parameters: - - 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 - - post: - summary: Notify about NSD and PNFD changes - 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 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 - specified in the Table 5.4.10.3.1-2. - parameters: - - name: NsdOnBoardingFailureNotification - description: > - A notification about the failure of on-boarding an NSD. - in: body - required: true - schema: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdOnBoardingFailureNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231. - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231. - in: header - required: true - type: string - responses: - 204: - description: > - 204 NO CONTENT - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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, - 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 - responses: - 204: - description: > - 204 NO CONTENT - - The notification endpoint was tested successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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 - parameters: - - 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 - - post: - summary: Notify about NSD and PNFD changes - 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 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 - specified in the Table 5.4.10.3.1-2. - parameters: - - name: NsdChangeNotification - description: > - A notification about the state change of an on-boarded NSD. - in: body - required: true - schema: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdChangeNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231. - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231. - in: header - required: true - type: string - responses: - 204: - description: > - 204 NO CONTENT - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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, - 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 - responses: - 204: - description: > - 204 NO CONTENT - - The notification endpoint was tested successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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-NsdDeletionNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 - parameters: - - 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 - - post: - summary: Notify about NSD and PNFD changes - 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 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 - specified in the Table 5.4.10.3.1-2. - parameters: - - name: NsdDeletionNotification - description: > - A notification about the deletion of an on-boarded NSD. - in: body - required: true - schema: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdDeletionNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231. - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231. - in: header - required: true - type: string - responses: - 204: - description: > - 204 NO CONTENT - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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, - 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 - responses: - 204: - description: > - 204 NO CONTENT - - The notification endpoint was tested successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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-PnfdOnBoardingNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 - parameters: - - 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 - - post: - summary: Notify about NSD and PNFD changes - 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 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 - specified in the Table 5.4.10.3.1-2. - parameters: - - name: PnfdOnBoardingNotification - description: > - A notification about the successful on-boarding of a PNFD. - in: body - required: true - schema: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdOnBoardingNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231. - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231. - in: header - required: true - type: string - responses: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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, - 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 - responses: - 204: - description: > - 204 NO CONTENT - - The notification endpoint was tested successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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-PnfdOnBoardingFailureNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 - parameters: - - 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 - - post: - summary: Notify about NSD and PNFD changes - 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 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 - specified in the Table 5.4.10.3.1-2. - parameters: - - name: PnfdOnBoardingFailureNotification - description: > - A notification about the failure of on-boarding a PNFD. - in: body - required: true - schema: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdOnBoardingFailureNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231. - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231. - in: header - required: true - type: string - responses: - 204: - description: > - 204 NO CONTENT - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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, - 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 - responses: - 204: - description: > - 204 NO CONTENT - - The notification endpoint was tested successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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-PnfdDeletionNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 - parameters: - - 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 - - post: - summary: Notify about NSD and PNFD changes - 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 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 - specified in the Table 5.4.10.3.1-2. - parameters: - - name: PnfdDeletionNotification - description: > - A notification about the deletion of an on-boarded PNFD. - in: body - required: true - schema: - $ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdDeletionNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231. - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231. - in: header - required: true - type: string - responses: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $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, - 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 - responses: - 204: - description: > - 204 NO CONTENT - - The notification endpoint was tested successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: $ref: "../responses/SOL005_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml index 8ac2c455c0e6529cf10465e769b8fb1cb668ae5d..ecd44fb17b15294d791ddf9c845a6f97b701afd8 100644 --- a/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml +++ b/src/SOL005/NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml @@ -293,278 +293,6 @@ definitions: description: > This type represents a subscription related to notifications about NSD management. - NsdOnBoardingNotification: - type: object - required: - - _links - - id - - notificationType - - subscriptionId - - nsdId - - nsdInfoId - - timeStamp - properties: - id: - $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - nsdInfoId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - nsdId: - $ref: "../../definitions/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 - - subscriptionId - - nsdInfoId - - onboardingFailureDetails - - timeStamp - properties: - id: - $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - nsdInfoId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - nsdId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - onboardingFailureDetails: - $ref: "../../definitions/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 - - subscriptionId - - nsdId - - nsdInfoId - - nsdOperationalState - - timeStamp - properties: - id: - $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - nsdInfoId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - nsdId: - $ref: "../../definitions/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 - - subscriptionId - - nsdId - - nsdInfoId - - timeStamp - properties: - id: - $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - nsdInfoId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - nsdId: - $ref: "../../definitions/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 - - subscriptionId - - pnfdId - - pnfdInfoId - - timeStamp - properties: - id: - $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - pnfdInfoId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - pnfdId: - $ref: "../../definitions/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 - - subscriptionId - - onboardingFailureDetails - - pnfdInfoId - - timeStamp - properties: - id: - $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - pnfdInfoId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - pnfdId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - onboardingFailureDetails: - $ref: "../../definitions/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 - - subscriptionId - - 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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - pnfdInfoId: - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - pnfdId: - $ref: "../../definitions/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. - NsdmNotificationsFilter: type: object description: > @@ -715,34 +443,6 @@ definitions: items: $ref: "#/definitions/PnfdUsageStateType" - NsdmLinks: - type: object - required: - - nsdInfo - - subscription - properties: - nsdInfo: - $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - subscription: - $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - description: > - This type represents the links to resources that an NSD management - notification can contain. - - PnfdmLinks: - type: object - required: - - pnfdInfo - - subscription - properties: - pnfdInfo: - $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - subscription: - $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - description: > - This type represents the links to resources that a PNFD management - notification can contain. - NsdOperationalStateType: type: string description: > diff --git a/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml b/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b03d998de8a28d951f80ea6b2017a035180ce1dd --- /dev/null +++ b/src/SOL005/NSDManagementNotification/NSDManagementNotification.yaml @@ -0,0 +1,1065 @@ +swagger: "2.0" + +info: + version: "1.2.0" + title: SOL005 - NSD Management Notification interface + description: > + SOL005 - NSD Management Notification interface + + + IMPORTANT: Please note that this file might be not aligned to the current + version of the ETSI Group Specification it refers to. In case of + discrepancies the published ETSI Group Specification takes precedence. + + + In clause 4.3.2 of ETSI GS NFV-SOL 002 v2.4.1, an attribute-based + filtering mechanism is defined. This mechanism is currently not + included in the corresponding OpenAPI design for this GS version. Changes + to the attribute-based filtering mechanism are being considered in v2.5.1 + of this GS for inclusion in the corresponding future ETSI NFV OpenAPI + design. + + Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution= + license: + name: "ETSI Forge copyright notice" + url: https://forge.etsi.org/etsi-forge-copyright-notice.txt + +externalDocs: + description: ETSI GS NFV-SOL 005 V2.5.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf + +basePath: /callback/v1 + +schemes: + - http + - https + +consumes: + - application/json +produces: + - application/json + +paths: + ############################################################################### + # Notification endpoint NSDManagement # + ############################################################################### + '/URI_is_provided_by_the_client_when_creating_the_subscription-NsdOnBoardingNotification': + parameters: + - 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 + + post: + summary: Notify about NSD and PNFD changes + 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 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 + specified in the Table 5.4.10.3.1-2. + parameters: + - name: NsdOnBoardingNotification + description: > + A notification about the successful on-boarding of an NSD. + in: body + required: true + schema: + $ref: "definitions/SOL005NSDescriptorManagementNotification_def.yaml#/definitions/NsdOnBoardingNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231. + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + responses: + 204: + description: > + 204 NO CONTENT + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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, + 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 + responses: + 204: + description: > + 204 NO CONTENT + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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-NsdOnBoardingFailureNotification': + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + parameters: + - 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 + + post: + summary: Notify about NSD and PNFD changes + 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 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 + specified in the Table 5.4.10.3.1-2. + parameters: + - name: NsdOnBoardingFailureNotification + description: > + A notification about the failure of on-boarding an NSD. + in: body + required: true + schema: + $ref: "definitions/SOL005NSDescriptorManagementNotification_def.yaml#/definitions/NsdOnBoardingFailureNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231. + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + responses: + 204: + description: > + 204 NO CONTENT + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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, + 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 + responses: + 204: + description: > + 204 NO CONTENT + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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 + parameters: + - 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 + + post: + summary: Notify about NSD and PNFD changes + 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 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 + specified in the Table 5.4.10.3.1-2. + parameters: + - name: NsdChangeNotification + description: > + A notification about the state change of an on-boarded NSD. + in: body + required: true + schema: + $ref: "definitions/SOL005NSDescriptorManagementNotification_def.yaml#/definitions/NsdChangeNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231. + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + responses: + 204: + description: > + 204 NO CONTENT + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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, + 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 + responses: + 204: + description: > + 204 NO CONTENT + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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-NsdDeletionNotification': + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + parameters: + - 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 + + post: + summary: Notify about NSD and PNFD changes + 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 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 + specified in the Table 5.4.10.3.1-2. + parameters: + - name: NsdDeletionNotification + description: > + A notification about the deletion of an on-boarded NSD. + in: body + required: true + schema: + $ref: "definitions/SOL005NSDescriptorManagementNotification_def.yaml#/definitions/NsdDeletionNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231. + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + responses: + 204: + description: > + 204 NO CONTENT + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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, + 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 + responses: + 204: + description: > + 204 NO CONTENT + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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-PnfdOnBoardingNotification': + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + parameters: + - 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 + + post: + summary: Notify about NSD and PNFD changes + 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 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 + specified in the Table 5.4.10.3.1-2. + parameters: + - name: PnfdOnBoardingNotification + description: > + A notification about the successful on-boarding of a PNFD. + in: body + required: true + schema: + $ref: "definitions/SOL005NSDescriptorManagementNotification_def.yaml#/definitions/PnfdOnBoardingNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231. + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + responses: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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, + 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 + responses: + 204: + description: > + 204 NO CONTENT + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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-PnfdOnBoardingFailureNotification': + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + parameters: + - 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 + + post: + summary: Notify about NSD and PNFD changes + 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 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 + specified in the Table 5.4.10.3.1-2. + parameters: + - name: PnfdOnBoardingFailureNotification + description: > + A notification about the failure of on-boarding a PNFD. + in: body + required: true + schema: + $ref: "definitions/SOL005NSDescriptorManagementNotification_def.yaml#/definitions/PnfdOnBoardingFailureNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231. + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + responses: + 204: + description: > + 204 NO CONTENT + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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, + 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 + responses: + 204: + description: > + 204 NO CONTENT + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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-PnfdDeletionNotification': + #ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.10 + parameters: + - 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 + + post: + summary: Notify about NSD and PNFD changes + 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 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 + specified in the Table 5.4.10.3.1-2. + parameters: + - name: PnfdDeletionNotification + description: > + A notification about the deletion of an on-boarded PNFD. + in: body + required: true + schema: + $ref: "definitions/SOL005NSDescriptorManagementNotification_def.yaml#/definitions/PnfdDeletionNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231. + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + responses: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $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, + 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 + responses: + 204: + description: > + 204 NO CONTENT + + The notification endpoint was tested successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $ref: "../responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "../responses/SOL005_resp.yaml#/responses/503" diff --git a/src/SOL005/NSDManagementNotification/definitions/SOL005NSDescriptorManagementNotification_def.yaml b/src/SOL005/NSDManagementNotification/definitions/SOL005NSDescriptorManagementNotification_def.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5b4568c3a9d68f78d29409a672f38635dddcf5b8 --- /dev/null +++ b/src/SOL005/NSDManagementNotification/definitions/SOL005NSDescriptorManagementNotification_def.yaml @@ -0,0 +1,302 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +definitions: + NsdOnBoardingNotification: + type: object + required: + - _links + - id + - notificationType + - subscriptionId + - nsdId + - nsdInfoId + - timeStamp + properties: + id: + $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + nsdInfoId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + nsdId: + $ref: "../../definitions/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 + - subscriptionId + - nsdInfoId + - onboardingFailureDetails + - timeStamp + properties: + id: + $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + nsdInfoId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + nsdId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + onboardingFailureDetails: + $ref: "../../definitions/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 + - subscriptionId + - nsdId + - nsdInfoId + - nsdOperationalState + - timeStamp + properties: + id: + $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + nsdInfoId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + nsdId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + nsdOperationalState: + $ref: "../../NSDManagement/definitions/SOL005NSDescriptorManagement_def.yaml#/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 + - subscriptionId + - nsdId + - nsdInfoId + - timeStamp + properties: + id: + $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + nsdInfoId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + nsdId: + $ref: "../../definitions/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 + - subscriptionId + - pnfdId + - pnfdInfoId + - timeStamp + properties: + id: + $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + pnfdInfoId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + pnfdId: + $ref: "../../definitions/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 + - subscriptionId + - onboardingFailureDetails + - pnfdInfoId + - timeStamp + properties: + id: + $ref: "../../definitions/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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + pnfdInfoId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + pnfdId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + onboardingFailureDetails: + $ref: "../../definitions/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 + - subscriptionId + - 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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + pnfdInfoId: + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + pnfdId: + $ref: "../../definitions/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. + + NsdmLinks: + type: object + required: + - nsdInfo + - subscription + properties: + nsdInfo: + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + subscription: + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + description: > + This type represents the links to resources that an NSD management + notification can contain. + + PnfdmLinks: + type: object + required: + - pnfdInfo + - subscription + properties: + pnfdInfo: + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + subscription: + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + description: > + This type represents the links to resources that a PNFD management + notification can contain. \ No newline at end of file diff --git a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml index c8bc0973b5e8447fc4a805529f5cc00172c9efea..724f7a3ef09621481cfbe936c72dbfee5d7fcd2d 100644 --- a/src/SOL005/NSFaultManagement/NSFaultManagement.yaml +++ b/src/SOL005/NSFaultManagement/NSFaultManagement.yaml @@ -2,7 +2,7 @@ swagger: "2.0" info: version: "1.2.0" - title: SOL005 - NS Fault Management Interface + title: "SOL005 - NS Fault Management Interface" description: > SOL005 - NS Fault Management Interface IMPORTANT: Please note that this file might be not aligned to the current @@ -18,13 +18,14 @@ info: externalDocs: description: ETSI GS NFV-SOL 005 V2.5.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf -basePath: "/nsfm/v1" +basePath: /nsfm/v1 schemes: + - http - https consumes: - - "application/json" + - application/json produces: - - "application/json" + - application/json paths: ############################################################################### # API Versions # @@ -107,7 +108,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 @@ -133,19 +134,19 @@ paths: Alarm: $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/Alarm" 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" 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" 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 alarm # @@ -210,7 +211,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 @@ -228,19 +229,19 @@ paths: Alarm: $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/Alarm" 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" 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" 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: Acknowledge individual alarm. description: > @@ -248,18 +249,13 @@ paths: This method modifies an individual alarm resource. parameters: - - name: "body" - in: "body" + - 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. + $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. @@ -282,7 +278,8 @@ paths: in: header required: true type: string - enum: ["application/merge-patch+json"] + enum: + - application/merge-patch+json - name: Version description: > Version of the API requested to use when responding to this request. @@ -304,7 +301,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 @@ -322,23 +319,24 @@ paths: AlarmModifications: $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmModifications" 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" 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/NSFManagement_resp.yaml#/responses/409-alarm-state-conflict" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "../responses/SOL005_resp.yaml#/responses/412" 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 # ############################################################################## @@ -348,14 +346,14 @@ paths: summary: Subscribe to alarms related to NSs. 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. + 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. Creation of two subscription resources with the same callbackURI and the same filter can result in performance - degradation and will provide duplicates of notifications to the OSS, and might make sense only in very rare use cases. - Consequently, the NFVO may either allow creating a subscription resource if another subscription resource with the - same filter and 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). + degradation and will provide duplicates of notifications to the OSS, and might make sense only in very rare + use cases. Consequently, the NFVO may either allow creating a subscription resource if another subscription + resource with the same filter and 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: - name: Accept description: > @@ -384,19 +382,13 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - name: body + in: body required: true schema: - type: "object" - required: - - "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. - + $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: > @@ -408,19 +400,16 @@ paths: The HTTP response shall include a "Location:" HTTP header that points to the created subscription resource. schema: - type: "object" - properties: - FmSubscription: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscription" + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscription" 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 @@ -434,21 +423,21 @@ paths: 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" + $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" 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" 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: Query multiple subscriptions. description: > @@ -458,10 +447,9 @@ paths: 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. + 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. - parameters: - name: filter in: query @@ -527,7 +515,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 @@ -549,25 +537,23 @@ paths: schema: type: array 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" + $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" 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" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "../responses/SOL005_resp.yaml#/responses/412" 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 # @@ -590,9 +576,9 @@ paths: 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 + 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 parameters: - name: Accept description: > @@ -638,7 +624,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 @@ -652,23 +638,21 @@ paths: maximum: 1 minimum: 1 schema: - properties: - FmSubscription: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscription" + $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/FmSubscription" 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" 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" 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 a subscription. description: > @@ -698,7 +682,7 @@ paths: 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 @@ -712,303 +696,16 @@ 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" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" - 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.# - ################################################################################## - '/URI_is_provided_by_the_client_when_creating_the_subscription-AlarmNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6 - post: - summary: Notify about NS alarms - description: > - The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt. - - parameters: - - name: alarmNotification - description: > - Information of a NS alarm. - in: body - required: true - schema: - properties: - AlarmNotification: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmNotification" - - 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: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $ref: "responses/SOL005_resp.yaml#/responses/401" - 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" - 500: - $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-AlarmClearedNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6 - post: - summary: Notify about NS alarms - description: > - The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt. - parameters: - - name: alarmClearedNotification - description: > - Information of the clearance of a NS alarm. - in: body - required: true - schema: - properties: - AlarmClearedNotification: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmClearedNotification" - - 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: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $ref: "responses/SOL005_resp.yaml#/responses/401" - 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" - 500: - $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-AlarmListRebuiltNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6 - post: - summary: Notify about NS alarms - description: > - The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt. - parameters: - - name: AlarmListRebuiltNotification - description: > - Information that the alarm list has been rebuilt by the NFVO. - in: body - required: true - schema: - properties: - AlarmListRebuiltNotification: - $ref: "definitions/SOL005NSFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification" - - 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: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - The response body shall be empty. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $ref: "responses/SOL005_resp.yaml#/responses/401" - 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" - 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" - 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - - get: - summary: Test the notification endpoint - description: > - The GET method allows the server to test the notification endpoint that is provided by the client, e.g. during - subscription. - 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: 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" - description: > - 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" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 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/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml b/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml index 68b32890af25a1743cce18f5ecc5c15e74aa65d0..ab28ca20c3b737b84edfa7b9c707fbd60cc44184 100644 --- a/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml +++ b/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml @@ -22,11 +22,11 @@ definitions: id: description: > Identifier of this Alarm information element. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" managedObjectId: description: > Identifier of the affected NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" rootCauseFaultyComponent: description: > The NS components that are causing the NS fault. @@ -40,15 +40,15 @@ definitions: alarmRaisedTime: description: > Alarm identifier. - $ref: "SOL005_def.yaml#/definitions/DateTime" + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" alarmChangedTime: description: > The time stamp indicating when the alarm was cleared. - $ref: "SOL005_def.yaml#/definitions/DateTime" + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" alarmClearedTime: description: > Links to resources related to this notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" ackState: description: > Acknowledgment state of the alarm. @@ -66,7 +66,7 @@ definitions: eventTime: description: > Time stamp indicating when the fault was observed. - $ref: "SOL005_def.yaml#/definitions/DateTime" + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" eventType: description: > Type of event. @@ -90,7 +90,7 @@ definitions: List of identifiers of other alarms correlated to this fault. type: array items: - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" faultDetails: description: > Provides additional information about the fault.. @@ -105,127 +105,14 @@ definitions: self: description: > URI of this resource. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/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" - - 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: - - id - - notificationType - - subscriptionId - - timeStamp - - alarmId - - alarmClearedTime - - _links - properties: - id: - 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. - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "AlarmClearedNotification" for this notification type. - type: string - enum: - - AlarmClearedNotification - subscriptionId: - description: > - 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" - alarmId: - description: > - Alarm identifier. - $ref: "SOL005_def.yaml#/definitions/Identifier" - alarmClearedTime: - description: > - The time stamp indicating when the alarm was cleared. - _links: - description: > - Links to resources related to this notification. - type: object - required: - - subscription - - alarm - properties: - subscription: - description: > - Link to the related subscription. - $ref: "SOL005_def.yaml#/definitions/NotificationLink" - alarm: - description: > - Link to the resource that represents the related alarm. - $ref: "SOL005_def.yaml#/definitions/NotificationLink" - - AlarmListRebuiltNotification: - description: > - This type represents a notification that the alarm list has been - rebuilt, e.g. if the VNFM detects its storage holding the alarm - list is corrupted. - The notification shall be triggered by the VNFM when the alarm list has - been rebuilt. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - _links - properties: - id: - 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. - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "AlarmListRebuiltNotification" for this notification type. - type: string - enum: - - AlarmListRebuiltNotification - subscriptionId: - description: > - 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" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - subscription - - alarms - properties: - subscription: - description: > - Link to the related subscription. - $ref: "SOL005_def.yaml#/definitions/NotificationLink" - alarms: - description: > - Link to the alarm list, i.e. the "Alarms" resource. - $ref: "SOL005_def.yaml#/definitions/NotificationLink" + $ref: "../../definitions/SOL005_def.yaml#/definitions/Link" AlarmModifications: description: > @@ -281,7 +168,7 @@ definitions: description: > Information that identifies the faulty resource instance and its managing entity. - $ref: "SOL005_def.yaml#/definitions/ResourceHandle" + $ref: "../../definitions/SOL005_def.yaml#/definitions/ResourceHandle" faultyResourceType: description: > Type of the faulty resource. @@ -316,7 +203,7 @@ definitions: nsInstanceSubscriptionFilter: description: > Filter criteria to select NS instances about which to notify. - $ref: "SOL005_def.yaml#/definitions/NsInstanceSubscriptionFilter" + $ref: "../../definitions/SOL005_def.yaml#/definitions/NsInstanceSubscriptionFilter" notificationTypes: description: > Match particular notification types. @@ -370,7 +257,7 @@ definitions: id: description: > Identifier of this subscription resource. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" filter: description: > Filter settings for this subscription, to define the subset of all @@ -393,7 +280,7 @@ definitions: self: description: > URI of this resource. - $ref: "SOL005_def.yaml#/definitions/Link" + $ref: "../../definitions/SOL005_def.yaml#/definitions/Link" FmSubscriptionRequest: description: > @@ -421,7 +308,7 @@ definitions: sending notifications corresponding to this subscription. This attribute shall only be present if the subscriber requires authorization of notifications. - $ref: "SOL005_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication" PerceivedSeverityType: description: > @@ -473,70 +360,12 @@ definitions: faultyNestedNsInstanceId: description: > Identifier of the faulty nested NS instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" faultyResourceType: description: > Identifier of the faulty NS virtual link instance. - $ref: "SOL005_def.yaml#/definitions/Identifier" + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" faultyNsVirtualLinkInstanceId: 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: - - id - - notificationType - - subscriptionId - - timeStamp - - alarm - - _links - properties: - id: - 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. - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. - Shall be set to "AlarmNotification" for this notification type. - type: string - enum: - - AlarmClearedNotification - subscriptionId: - description: > - 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" - alarm: - description: > - Information about an alarm including AlarmId, affected - NS identifier, and FaultDetails. - $ref: "#/definitions/Alarm" - alarmClearedTime: - description: > - The time stamp indicating when the alarm was cleared. - _links: - description: > - Links to resources related to this notification. - type: object - required: - - subscription - - alarm - properties: - subscription: - description: > - Link to the related subscription. - $ref: "SOL005_def.yaml#/definitions/NotificationLink" - alarm: - description: > - Link to the resource that represents the related alarm. - $ref: "SOL005_def.yaml#/definitions/Link" \ No newline at end of file + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" \ No newline at end of file diff --git a/src/SOL005/NSFaultManagement/definitions/SOL005_def.yaml b/src/SOL005/NSFaultManagement/definitions/SOL005_def.yaml deleted file mode 100644 index f3690ee93db5a9e60c28bb784f054d8ee7af4c2d..0000000000000000000000000000000000000000 --- a/src/SOL005/NSFaultManagement/definitions/SOL005_def.yaml +++ /dev/null @@ -1,269 +0,0 @@ -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 deleted file mode 100644 index 45941a9325c7b78456a05f7005a78ddc34028ab8..0000000000000000000000000000000000000000 --- a/src/SOL005/NSFaultManagement/responses/NSFManagement_resp.yaml +++ /dev/null @@ -1,29 +0,0 @@ -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 - in the state that is requested to be set (such as trying to - acknowledge an already-acknowledged alarm). - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute 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/NSFaultManagement/responses/SOL005_resp.yaml b/src/SOL005/NSFaultManagement/responses/SOL005_resp.yaml deleted file mode 100644 index 088389c32bca4e313af99a1c478af361626afef8..0000000000000000000000000000000000000000 --- a/src/SOL005/NSFaultManagement/responses/SOL005_resp.yaml +++ /dev/null @@ -1,195 +0,0 @@ -# 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/NSFaultManagementNotification/NSFaultManagementNotification.yaml b/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5e49c2f59a29988d998daf05f06e3cf217b662a2 --- /dev/null +++ b/src/SOL005/NSFaultManagementNotification/NSFaultManagementNotification.yaml @@ -0,0 +1,323 @@ +swagger: "2.0" + +info: + version: "1.2.0" + title: "SOL005 - NS Fault Management Notification interface" + description: > + SOL005 - NS Fault Management Notification interface + + + IMPORTANT: Please note that this file might be not aligned to the current + version of the ETSI Group Specification it refers to. In case of + discrepancies the published ETSI Group Specification takes precedence. + + + In clause 4.3.2 of ETSI GS NFV-SOL 002 v2.4.1, an attribute-based + filtering mechanism is defined. This mechanism is currently not + included in the corresponding OpenAPI design for this GS version. Changes + to the attribute-based filtering mechanism are being considered in v2.5.1 + of this GS for inclusion in the corresponding future ETSI NFV OpenAPI + design. + + Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution= + license: + name: "ETSI Forge copyright notice" + url: https://forge.etsi.org/etsi-forge-copyright-notice.txt + +externalDocs: + description: ETSI GS NFV-SOL 005 V2.5.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf + +basePath: /callback/v1 + +schemes: + - http + - https + +consumes: + - application/json +produces: + - application/json +paths: + ################################################################################## + # Notification endpoint NS Fault Management # + ################################################################################## + '/URI_is_provided_by_the_client_when_creating_the_subscription-AlarmNotification': + post: + summary: Notify about NS alarms + description: > + The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt. + + parameters: + - name: alarmNotification + description: > + Information of a NS alarm. + in: body + required: true + schema: + properties: + AlarmNotification: + $ref: "definitions/SOL005NSFaultManagementNotification_def.yaml#/definitions/AlarmNotification" + - 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: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $ref: "../responses/SOL005_resp.yaml#/responses/401" + 403: + $ref: "../responses/SOL005_resp.yaml#/responses/403" + 500: + $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-AlarmClearedNotification': + #ETSI GS NFV-SOL 005 V2.4.1 location: 8.4.6 + post: + summary: Notify about NS alarms + description: > + The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt. + parameters: + - name: alarmClearedNotification + description: > + Information of the clearance of a NS alarm. + in: body + required: true + schema: + properties: + AlarmClearedNotification: + $ref: "definitions/SOL005NSFaultManagementNotification_def.yaml#/definitions/AlarmClearedNotification" + - 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: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: "string" + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $ref: "../responses/SOL005_resp.yaml#/responses/401" + 403: + $ref: "../responses/SOL005_resp.yaml#/responses/403" + 500: + $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-AlarmListRebuiltNotification': + post: + summary: Notify about NS alarms + description: > + The POST method notifies an alarm related to a NS or that the alarm list has been rebuilt. + parameters: + - name: AlarmListRebuiltNotification + description: > + Information that the alarm list has been rebuilt by the NFVO. + in: body + required: true + schema: + properties: + AlarmListRebuiltNotification: + $ref: "definitions/SOL005NSFaultManagementNotification_def.yaml#/definitions/AlarmListRebuiltNotification" + - 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: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + The response body shall be empty. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $ref: "../responses/SOL005_resp.yaml#/responses/401" + 403: + $ref: "../responses/SOL005_resp.yaml#/responses/403" + 500: + $ref: "../responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "../responses/SOL005_resp.yaml#/responses/503" + + get: + summary: Test the notification endpoint + description: > + The GET method allows the server to test the notification endpoint that is provided by the client, e.g. during + subscription. + 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: 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 + description: > + 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" + 500: + $ref: "../responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "../responses/SOL005_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL005/NSFaultManagementNotification/definitions/SOL005NSFaultManagementNotification_def.yaml b/src/SOL005/NSFaultManagementNotification/definitions/SOL005NSFaultManagementNotification_def.yaml new file mode 100644 index 0000000000000000000000000000000000000000..bdeec9abcf58e3006fc9fc356bf0ab2ea76e6391 --- /dev/null +++ b/src/SOL005/NSFaultManagementNotification/definitions/SOL005NSFaultManagementNotification_def.yaml @@ -0,0 +1,173 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +definitions: + AlarmNotification: + description: > + This type represents an alarm notification about NS faults. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - alarm + - _links + properties: + id: + 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. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. + Shall be set to "AlarmNotification" for this notification type. + type: string + enum: + - AlarmClearedNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + alarm: + description: > + Information about an alarm including AlarmId, affected + NS identifier, and FaultDetails. + $ref: "../../NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml#/definitions/Alarm" + alarmClearedTime: + description: > + The time stamp indicating when the alarm was cleared. + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + - alarm + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + alarm: + description: > + Link to the resource that represents the related alarm. + $ref: "../../definitions/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: + - id + - notificationType + - subscriptionId + - timeStamp + - alarmId + - alarmClearedTime + - _links + properties: + id: + 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. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmClearedNotification" for this notification type. + type: string + enum: + - AlarmClearedNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + alarmId: + description: > + Alarm identifier. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + alarmClearedTime: + description: > + The time stamp indicating when the alarm was cleared. + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + - alarm + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + alarm: + description: > + Link to the resource that represents the related alarm. + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + + AlarmListRebuiltNotification: + description: > + This type represents a notification that the alarm list has been + rebuilt, e.g. if the VNFM detects its storage holding the alarm + list is corrupted. + The notification shall be triggered by the VNFM when the alarm list has + been rebuilt. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - _links + properties: + id: + 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. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmListRebuiltNotification" for this notification type. + type: string + enum: + - AlarmListRebuiltNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + - alarms + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + alarms: + description: > + Link to the alarm list, i.e. the "Alarms" resource. + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml b/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml index bfe7e2cf01cb71b1316011b08c06f40fefa67b1b..adcbad9407298d04acc6a0971cb0ca9cbebeff6b 100644 --- a/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml +++ b/src/SOL005/NSLifecycleManagement/NSLifecycleManagement.yaml @@ -2,7 +2,7 @@ swagger: "2.0" info: version: "1.2.0" - title: SOL005 - NS Lifecycle Management Interface + title: "SOL005 - NS Lifecycle Management Interface" description: > SOL005 - NS Lifecycle Management Interface IMPORTANT: Please note that this file might be not aligned to the current @@ -18,13 +18,14 @@ info: externalDocs: description: ETSI GS NFV-SOL 005 V2.5.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf -basePath: "/nslcm/v1" +basePath: /nslcm/v1 schemes: + - http - https consumes: - - "application/json" + - application/json produces: - - "application/json" + - application/json paths: ############################################################################### # API Versions # @@ -69,18 +70,13 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - name: body + in: body required: true schema: - type: "object" - required: - - "CreateNsRequest" - properties: - CreateNsRequest: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/CreateNsRequest" - description: > - The NS creation parameters, as defined in clause 6.5.2.7. + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/CreateNsRequest" + description: > + The NS creation parameters, as defined in clause 6.5.2.7. responses: 201: description: > @@ -93,19 +89,16 @@ paths: header that contains the resource URI of the created NS instance. schema: - type: "object" - properties: - NsInstance: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" 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 @@ -119,25 +112,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/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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: Query multiple NS instances. description: > @@ -240,7 +233,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 @@ -266,25 +259,25 @@ paths: NsInstance: $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" 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/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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 instance # @@ -339,20 +332,17 @@ paths: Information about an individual NS instance was queried successfully. The response body shall contain a representation of the NS instance. schema: - type: "object" - properties: - NsInstance: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsInstance" 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 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 @@ -366,25 +356,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/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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 NS instance resource. @@ -416,7 +406,7 @@ paths: 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 @@ -430,25 +420,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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-INSTANTIATED" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 412: - $ref: "responses/SOL005_resp.yaml#/responses/412" + $ref: "../responses/SOL005_resp.yaml#/responses/412" 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" ############################################################################### # Instantiate NS task # @@ -494,41 +484,36 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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. + $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" + $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location" 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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-INSTANTIATED" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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" ############################################################################### # Scale NS task # @@ -574,39 +559,34 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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. + $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" + $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location" 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-task-resource-not-exists" + $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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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" ############################################################################### # Update NS task # @@ -653,39 +633,34 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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. + $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/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location" 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-task-resource-not-exists" + $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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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" ############################################################################### # Heal NS task # @@ -734,39 +709,34 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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. + $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" + $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location" 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-task-resource-not-exists" + $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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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" ############################################################################### # Terminate NS task # @@ -819,39 +789,34 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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. + $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/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location" 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-task-resource-not-exists" + $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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-NOT-INSTANTIATED" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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" ############################################################################### # NS LCM operation occurrences # @@ -950,7 +915,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 @@ -976,23 +941,23 @@ paths: NsLcmOpOcc: $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc" 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/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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 lifecycle operation occurrence # @@ -1053,20 +1018,17 @@ paths: The response body shall contain status information about a NS lifecycle management operation occurrence (see clause 6.5.2.3). schema: - type: "object" - properties: - NsLcmOpOcc: - $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc" + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc" 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 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 @@ -1080,25 +1042,25 @@ 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/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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" ############################################################################### # Retry operation task # @@ -1141,25 +1103,25 @@ paths: type: string responses: 202: - $ref: "responses/SOL005_resp.yaml#/responses/202" + $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location-empty" 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-task-resource-not-exists-NS-LCM" + $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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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" ############################################################################### # Rollback a NS lifecycle management operation occurrence. # @@ -1202,25 +1164,25 @@ paths: type: string responses: 202: - $ref: "responses/SOL005_resp.yaml#/responses/202" + $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location-empty" 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-not-found" + $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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP" + $ref: "../responses/Sol005_resp.yaml#/responses/409" 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" ############################################################################### # Continue a NS lifecycle management operation occurrence. # @@ -1257,25 +1219,25 @@ paths: type: string responses: 202: - $ref: "responses/SOL005_resp.yaml#/responses/202" + $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location-empty" 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-not-found" + $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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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" ############################################################################### # Fail operation task # @@ -1324,20 +1286,18 @@ paths: type: string responses: 200: - description: 200 OK + description: > + 200 OK + + The state of the NS lifecycle management operation + occurrence was changed successfully. + The response shall include a representation of the NS + lifecycle management operation occurrence resource. schema: - type: "object" - description: > - The state of the NS lifecycle management operation - occurrence was changed successfully. - The response shall include a representation of the NS - lifecycle management operation occurrence resource. - properties: - NsLcmOpOcc: - $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc" + $ref: "definitions/NSLifecycleManagement_def.yaml#/definitions/NsLcmOpOcc" 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 @@ -1345,7 +1305,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 @@ -1359,23 +1319,23 @@ 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-not-found" + $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/NSLifecycleManagement_resp.yaml#/responses/409-state-conflict-not-FAILED_TEMP" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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" ############################################################################### # Cancel operation task # @@ -1431,68 +1391,36 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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. + $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" + $ref: "responses/SOL005NSLifecycleManagement_resp.yaml#/responses/202-with-Location-empty" 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-task-resource-not-exists-NS-LCM" + $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: - description: > - 409 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 operation - occurrence is not in STARTING, PROCESSING or - ROLLING_BACK state. - The response body shall contain a ProblemDetails - structure, in which the "detail" attribute shall convey - more information about the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - type: "string" - description: > - 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 - schema: - $ref: "definitions/SOL005_def.yaml#/definitions/ProblemDetails" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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 # @@ -1539,18 +1467,13 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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. + $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: > @@ -1562,19 +1485,16 @@ paths: The HTTP response shall include a "Location:" HTTP header that points to the created subscription resource. schema: - type: "object" - properties: - LccnSubscription: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" 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 @@ -1588,47 +1508,23 @@ paths: maximum: 1 minimum: 1 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. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - maximum: 1 - minimum: 0 - Version: - description: > - Version of the API used in the response. - type: string - maximum: 1 - minimum: 1 + $ref: "../responses/SOL005_resp.yaml#/responses/303" 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-task-not-suported-NS-LCM" + $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" 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: Query multiple subscriptions. description: > @@ -1688,13 +1584,13 @@ paths: in this response shall follow the provisions in clause 4.7.2.3. 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 @@ -1716,47 +1612,23 @@ paths: schema: type: array items: - properties: - LccnSubscription: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" 400: - description: > - Bad Request. - - Invalid attribute-based filtering parameters. - The response body shall contain a ProblemDetails structure, in - which the "detail" attribute should convey more information about - the error. - headers: - Content-Type: - description: The MIME type of the body of the response. - type: string - maximum: 1 - minimum: 1 - WWW-Authenticate: - type: "string" - description: > - 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 - schema: - $ref: "definitions/SOL005_def.yaml#/definitions/ProblemDetails" + $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-task-not-suported-NS-LCM" + $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" 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 # @@ -1806,18 +1678,15 @@ paths: The response body shall contain a representation of the subscription resource. schema: - type: "object" - properties: - LccnSubscription: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" + $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnSubscription" 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 @@ -1831,21 +1700,21 @@ 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-task-not-suported-NS-LCM" + $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" 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 a subscription. description: > @@ -1875,345 +1744,7 @@ paths: The response body shall be empty. headers: WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $ref: "responses/SOL005_resp.yaml#/responses/401" - 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" - 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" - 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" - 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.# - ################################################################################## - '/URI_is_provided_by_the_client_when_creating_the_subscription-NsLcmOperationOccurrenceNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.18 - post: - summary: Notify about NS lifecycle change - description: > - 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 - specified in the Tables 6.4.18.3.1-1 and 6.4.18.3.1-2. - - parameters: - - name: NsLcmOperationOccurrenceNotification - description: > - A notification about lifecycle changes triggered by a NS LCM. - operation occurrence. - in: body - required: true - schema: - properties: - NsLcmOperationOccurrenceNotification: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOperationOccurrenceNotification" - - 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: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" - 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" - 500: - $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-NsIdentifierCreationNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.18 - post: - summary: Notify about NS lifecycle change - description: > - 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 - specified in the Tables 6.4.18.3.1-1 and 6.4.18.3.1-2. - - parameters: - - name: NsIdentifierCreationNotification - description: > - A notification about the creation of a NS identifier and the related - NS instance resource. - in: body - required: true - schema: - properties: - NsIdentifierCreationNotification: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsIdentifierCreationNotification" - - 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: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" - 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" - 500: - $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-NsIdentifierDeletionNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 6.4.18 - post: - summary: Notify about NS lifecycle change - description: > - 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 - specified in the Tables 6.4.18.3.1-1 and 6.4.18.3.1-2. - - parameters: - - name: NsIdentifierDeletionNotification - description: > - A notification about the deletion of a NS identifier and the related - NS instance resource. - in: body - required: true - schema: - properties: - NsIdentifierDeletionNotification: - $ref: "definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsIdentifierDeletionNotification" - - 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: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" - 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" - 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" - 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. - 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: 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" description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request @@ -2227,22 +1758,16 @@ 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" - 404: - $ref: "responses/SOL005_resp.yaml#/responses/404" + $ref: "../responses/SOL005_resp.yaml#/responses/403" 405: - $ref: "responses/SOL005_resp.yaml#/responses/405" + $ref: "../responses/SOL005_resp.yaml#/responses/405" 406: - $ref: "responses/SOL005_resp.yaml#/responses/406" - 409: - $ref: "responses/NSLifecycleManagement_resp.yaml#/responses/409-inconsistent-state" - 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_resp.yaml#/responses/406" 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/NSLifecycleManagement/definitions/NSLifecycleManagement_def.yaml b/src/SOL005/NSLifecycleManagement/definitions/NSLifecycleManagement_def.yaml index dc4f6c41c90a326fe119bf7abc1ead8ffea6b65f..58131062a8db8369af3d0831ca7490db5a5719ff 100644 --- a/src/SOL005/NSLifecycleManagement/definitions/NSLifecycleManagement_def.yaml +++ b/src/SOL005/NSLifecycleManagement/definitions/NSLifecycleManagement_def.yaml @@ -22,202 +22,7 @@ definitions: items: $ref: "#/definitions/HealVnfData" - NsLcmOpOcc: - description: > - This type represents a request a NS lifecycle operation occurrence. - It shall comply with the provisions defined in Table 6.5.2.3-1. - type: object - required: - - id - - operationState - - stateEnteredTime - - nsInstanceId - - lcmOperationType - - startTime - - isAutomaticInvocation - - isCancelPending - - _links - properties: - id: - description: > - Identifier of this NS lifecycle operation occurrence. - $ref: "SOL005_def.yaml#/definitions/Identifier" - operationState: - description: > - The state of the NS LCM operation. - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOperationStateType" - stateEnteredTime: - description: > - Date-time when the current state was entered. - type: string - format: date-time - nsInstanceId: - description: > - Identifier of the NS instance to which the operation applies. - $ref: "SOL005_def.yaml#/definitions/Identifier" - lcmOperationType: - description: > - Type of the actual LCM operation represented by this - lcm operation occurrence. - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpType" - startTime: - description: > - Date-time of the start of the operation. - type: string - format: date-time - isAutomaticInvocation: - description: > - Set to true if this NS LCM operation occurrence has - been automatically triggered by the NFVO. This occurs - in the case of auto-scaling, auto-healing and when a - nested NS is modified as a result of an operation on its - composite NS. Set to false otherwise. - type: boolean - operationParams: - description: > - Input parameters of the LCM operation. This attribute - shall be formatted according to the request data type of - the related LCM operation. - The following mapping between lcmOperationType and - the data type of this attribute shall apply: - - INSTANTIATE: InstantiateNsRequest - - SCALE: ScaleNsRequest - - UPDATE: UpdateNsRequest - - HEAL: HealNsRequest - - TERMINATE: TerminateNsRequest - This attribute shall be present if this data type is returned - in a response to reading an individual resource, and may - be present according to the chosen attribute selector - parameter if this data type is returned in a response to a - query of a container resource. - type: string - enum: - - INSTANTIATE - - SCALE - - UPDATE - - HEAL - - TERMINATE - isCancelPending: - description: > - If the LCM operation occurrence is in "PROCESSING" - or "ROLLING_BACK" state and the operation is being - cancelled, this attribute shall be set to true. Otherwise, it - shall be set to false. - type: boolean - cancelMode: - description: > - The mode of an ongoing cancellation. Shall be present - when isCancelPending=true, and shall be absent otherwise. - $ref: "#/definitions/CancelModeType" - error: - description: > - If "operationState" is "FAILED_TEMP" or "FAILED" or "operationState" - is "PROCESSING" or "ROLLING_BACK" and previous value of - "operationState" was "FAILED_TEMP", this attribute shall be present - and contain error information, unless it has been requested to be - excluded via an attribute selector. - $ref: "#/definitions/ProblemDetails" - resourceChanges: - description: > - This attribute contains information about the cumulative - changes to virtualised resources that were performed so - far by the LCM operation since its start, if applicable - type: object - properties: - affectedVnfs: - description: > - Information about the VNF instances that were affected - during the lifecycle operation, if this notification - represents the result of a lifecycle operation. - type: array - items: - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnf" - affectedPnfs: - description: > - Information about the PNF instances that were affected - during the lifecycle operation, if this notification - represents the result of a lifecycle operation. - type: array - items: - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedPnf" - affectedVls: - description: > - Information about the VL instances that were affected - during the lifecycle operation, if this notification - represents the result of a lifecycle operation. - type: array - items: - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVl" - affectedVnffgs: - description: > - Information about the VNFFG instances that were - affected during the lifecycle operation, if this notification - represents the result of a lifecycle operation. See note - type: array - items: - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnffg" - affectedNss: - description: > - Information about the nested NS instances that were - affected during the lifecycle operation, if this notification - represents the result of a lifecycle operation. See note. - type: array - items: - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedNs" - affectedSaps: - description: > - Information about the nested NS instances that were - affected during the lifecycle operation, if this notification - represents the result of a lifecycle operation. See note. - type: array - items: - $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedSap" - _links: - description: > - Links to resources related to this resource. - type: object - required: - - self - - nsInstance - properties: - self: - description: > - URI of this resource. - $ref: "SOL005_def.yaml#/definitions/Link" - nsInstance: - description: > - Link to the NS instance that the operation applies to. - $ref: "SOL005_def.yaml#/definitions/Link" - cancel: - description: > - Link to the task resource that represents the "cancel" - operation for this LCM operation occurrence, if - cancelling is currently allowed. - $ref: "SOL005_def.yaml#/definitions/Link" - retry: - description: > - Link to the task resource that represents the "cancel" - operation for this LCM operation occurrence, - if cancelling is currently allowed. - $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. - $ref: "SOL005_def.yaml#/definitions/Link" - continue: - description: > - Link to the task resource that represents the "continue" - operation for this LCM operation occurrence, if rolling - back is currently allowed. - $ref: "SOL005_def.yaml#/definitions/Link" - fail: - description: > - Link to the task resource that represents the "fail" - operation for this LCM operation occurrence, if rolling - back is currently allowed. - $ref: "SOL005_def.yaml#/definitions/Link" + CancelMode: description: > This type represents a parameter to select the mode of canceling an ongoing NS LCM operation occurrence. diff --git a/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml b/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml index fb0d66db033fa053dc0c37903e28bc4a193e9fb7..6d7788761d2a5447ca73ec668b8de035c5ef849c 100644 --- a/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml +++ b/src/SOL005/NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml @@ -3069,6 +3069,7 @@ definitions: - UPDATE - TERMINATE - HEAL + LccnSubscriptionRequest: description: > This type represents a subscription request related to notifications @@ -3134,6 +3135,7 @@ definitions: description: > URI of this resource. $ref: "SOL005_def.yaml#/definitions/Link" + LifecycleChangeNotificationsFilter: description: > This type represents a subscription filter related to notifications about @@ -3221,178 +3223,6 @@ definitions: items: $ref: "#/definitions/LcmOpOccStatusForChangeNotificationType" - NsLcmOperationOccurrenceNotification: - type: object - required: - - id - - nsInstanceId - - nsLcmOpOccId - - subscriptionId - properties: - id: - 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. - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsInstanceId: - description: > - The identifier of the NS instance affected. - $ref: "SOL005_def.yaml#/definitions/Identifier" - nsLcmOpOccId: - description: > - The identifier of the NS lifecycle operation occurrence - associated to the notification. - $ref: "SOL005_def.yaml#/definitions/Identifier" - operation: - description: > - The lifecycle operation. - $ref: "#/definitions/NsLcmOpType" - notificationType: - description: > - Discriminator for the different notification types. Shall be - set to "NsLcmOperationOccurrenceNotification" for this - notification type. - type: string - subscriptionId: - description: > - 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" - notificationStatus: - description: > - Indicates whether this notification reports about the start - of a NS lifecycle operation or the result of a NS lifecycle - operation. - Permitted values: - - START: Informs about the start of the NS LCM - operation occurrence. - - RESULT: Informs about the final or intermediate - result of the NS LCM operation occurrence. - type: string - enum: - - START - - RESULT - operationState: - description: > - The state of the NS lifecycle operation occurrence. - $ref: "#/definitions/NsLcmOperationStateType" - isAutomaticInvocation: - description: > - Set to true if this NS LCM operation occurrence has - been automatically triggered by the NFVO. This occurs - in case of auto-scaling, auto-healing and when a nested - NS is modified as a result of an operation on its - composite NS. Set to false otherwise. - type: boolean - affectedVnf: - description: > - Information about the VNF instances that were affected - during the lifecycle operation. - $ref: "#/definitions/AffectedVnf" - affectedPnf: - description: > - Information about the PNF instances that were affected - during the lifecycle operation. - $ref: "#/definitions/AffectedPnf" - affectedVl: - description: > - Information about the VL instances that were affected - during the lifecycle operation. - type: array - items: - $ref: "#/definitions/AffectedVirtualLink" - affectedVnffg: - description: > - Information about the VNFFG instances that were - affected during the lifecycle operation. - type: array - items: - $ref: "#/definitions/AffectedVnffg" - affectedNs: - description: > - Information about the SAP instances that were affected - during the lifecycle operation. See note. - type: array - items: - $ref: "#/definitions/AffectedSap" - affectedSap: - description: > - The lifecycle operation. - $ref: "#/definitions/NsLcmOpType" - error: - description: > - Details of the latest error, if one has occurred during - executing the LCM operation (see clause 4.3.5). Shall - be present if operationState is "FAILED_TEMP" or - "FAILED", and shall be absent otherwise. - $ref: "SOL005_def.yaml#/definitions/ProblemDetails" - _links: - description: > - Links to resources related to this notification. - $ref: "#/definitions/LccnLinks" - - NsIdentifierCreationNotification: - type: object - required: - - subscriptionId - - nsInstanceId - properties: - notificationType: - description: > - 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" - 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" - _links: - description: > - Links to resources related to this notification. - $ref: "#/definitions/LccnLinks" - - NsIdentifierDeletionNotification: - type: object - required: - - subscriptionId - - nsInstanceId - properties: - notificationType: - description: > - 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" - 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" - _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. @@ -3409,6 +3239,7 @@ definitions: description: > Identifier of the NS scale level. $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd" + ScaleNsData: description: > This type represents the information to scale a NS. @@ -3749,4 +3580,201 @@ definitions: - COMPLETED - PARTIALLY_COMPLETED - FAILED - - ROLLED_BACK \ No newline at end of file + - ROLLED_BACK + + NsLcmOpOcc: + description: > + This type represents a request a NS lifecycle operation occurrence. + It shall comply with the provisions defined in Table 6.5.2.3-1. + type: object + required: + - id + - operationState + - stateEnteredTime + - nsInstanceId + - lcmOperationType + - startTime + - isAutomaticInvocation + - isCancelPending + - _links + properties: + id: + description: > + Identifier of this NS lifecycle operation occurrence. + $ref: "SOL005_def.yaml#/definitions/Identifier" + operationState: + description: > + The state of the NS LCM operation. + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOperationStateType" + stateEnteredTime: + description: > + Date-time when the current state was entered. + type: string + format: date-time + nsInstanceId: + description: > + Identifier of the NS instance to which the operation applies. + $ref: "SOL005_def.yaml#/definitions/Identifier" + lcmOperationType: + description: > + Type of the actual LCM operation represented by this + lcm operation occurrence. + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpType" + startTime: + description: > + Date-time of the start of the operation. + type: string + format: date-time + isAutomaticInvocation: + description: > + Set to true if this NS LCM operation occurrence has + been automatically triggered by the NFVO. This occurs + in the case of auto-scaling, auto-healing and when a + nested NS is modified as a result of an operation on its + composite NS. Set to false otherwise. + type: boolean + operationParams: + description: > + Input parameters of the LCM operation. This attribute + shall be formatted according to the request data type of + the related LCM operation. + The following mapping between lcmOperationType and + the data type of this attribute shall apply: + - INSTANTIATE: InstantiateNsRequest + - SCALE: ScaleNsRequest + - UPDATE: UpdateNsRequest + - HEAL: HealNsRequest + - TERMINATE: TerminateNsRequest + This attribute shall be present if this data type is returned + in a response to reading an individual resource, and may + be present according to the chosen attribute selector + parameter if this data type is returned in a response to a + query of a container resource. + type: string + enum: + - INSTANTIATE + - SCALE + - UPDATE + - HEAL + - TERMINATE + isCancelPending: + description: > + If the LCM operation occurrence is in "PROCESSING" + or "ROLLING_BACK" state and the operation is being + cancelled, this attribute shall be set to true. Otherwise, it + shall be set to false. + type: boolean + cancelMode: + description: > + The mode of an ongoing cancellation. Shall be present + when isCancelPending=true, and shall be absent otherwise. + $ref: "#/definitions/CancelModeType" + error: + description: > + If "operationState" is "FAILED_TEMP" or "FAILED" or "operationState" + is "PROCESSING" or "ROLLING_BACK" and previous value of + "operationState" was "FAILED_TEMP", this attribute shall be present + and contain error information, unless it has been requested to be + excluded via an attribute selector. + $ref: "#/definitions/ProblemDetails" + resourceChanges: + description: > + This attribute contains information about the cumulative + changes to virtualised resources that were performed so + far by the LCM operation since its start, if applicable + type: object + properties: + affectedVnfs: + description: > + Information about the VNF instances that were affected + during the lifecycle operation, if this notification + represents the result of a lifecycle operation. + type: array + items: + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnf" + affectedPnfs: + description: > + Information about the PNF instances that were affected + during the lifecycle operation, if this notification + represents the result of a lifecycle operation. + type: array + items: + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedPnf" + affectedVls: + description: > + Information about the VL instances that were affected + during the lifecycle operation, if this notification + represents the result of a lifecycle operation. + type: array + items: + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVl" + affectedVnffgs: + description: > + Information about the VNFFG instances that were + affected during the lifecycle operation, if this notification + represents the result of a lifecycle operation. See note + type: array + items: + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnffg" + affectedNss: + description: > + Information about the nested NS instances that were + affected during the lifecycle operation, if this notification + represents the result of a lifecycle operation. See note. + type: array + items: + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedNs" + affectedSaps: + description: > + Information about the nested NS instances that were + affected during the lifecycle operation, if this notification + represents the result of a lifecycle operation. See note. + type: array + items: + $ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedSap" + _links: + description: > + Links to resources related to this resource. + type: object + required: + - self + - nsInstance + properties: + self: + description: > + URI of this resource. + $ref: "SOL005_def.yaml#/definitions/Link" + nsInstance: + description: > + Link to the NS instance that the operation applies to. + $ref: "SOL005_def.yaml#/definitions/Link" + cancel: + description: > + Link to the task resource that represents the "cancel" + operation for this LCM operation occurrence, if + cancelling is currently allowed. + $ref: "SOL005_def.yaml#/definitions/Link" + retry: + description: > + Link to the task resource that represents the "cancel" + operation for this LCM operation occurrence, + if cancelling is currently allowed. + $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. + $ref: "SOL005_def.yaml#/definitions/Link" + continue: + description: > + Link to the task resource that represents the "continue" + operation for this LCM operation occurrence, if rolling + back is currently allowed. + $ref: "SOL005_def.yaml#/definitions/Link" + fail: + description: > + Link to the task resource that represents the "fail" + operation for this LCM operation occurrence, if rolling + back is currently allowed. + $ref: "SOL005_def.yaml#/definitions/Link" \ No newline at end of file diff --git a/src/SOL005/NSLifecycleManagement/responses/NSLifecycleManagement_resp.yaml b/src/SOL005/NSLifecycleManagement/responses/NSLifecycleManagement_resp.yaml deleted file mode 100644 index e48759dfa7dd53f235a025a89a777c83687132e7..0000000000000000000000000000000000000000 --- a/src/SOL005/NSLifecycleManagement/responses/NSLifecycleManagement_resp.yaml +++ /dev/null @@ -1,190 +0,0 @@ -# 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/SOL005NSLifecycleManagement_resp.yaml b/src/SOL005/NSLifecycleManagement/responses/SOL005NSLifecycleManagement_resp.yaml new file mode 100644 index 0000000000000000000000000000000000000000..384bebb3e4cd531498e629758f5abfc24c99fee0 --- /dev/null +++ b/src/SOL005/NSLifecycleManagement/responses/SOL005NSLifecycleManagement_resp.yaml @@ -0,0 +1,60 @@ +# 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: > + 202 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 \ No newline at end of file diff --git a/src/SOL005/NSLifecycleManagement/responses/SOL005_resp.yaml b/src/SOL005/NSLifecycleManagement/responses/SOL005_resp.yaml deleted file mode 100644 index 282ece1741cc834c72d8658f7378c9d744d01b51..0000000000000000000000000000000000000000 --- a/src/SOL005/NSLifecycleManagement/responses/SOL005_resp.yaml +++ /dev/null @@ -1,416 +0,0 @@ -# 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: - 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 - 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 - - 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/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml b/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0efb232cff8fc058f648fd5d4ebacd6efb711657 --- /dev/null +++ b/src/SOL005/NSLifecycleManagementNotification/NSLifecycleManagementNotification.yaml @@ -0,0 +1,379 @@ +swagger: "2.0" + +info: + version: "1.2.0" + title: "SOL005 - NS Lifecycle Management Notification interface" + description: > + SOL005 - NS Lifecycle Management Notification interface + + + IMPORTANT: Please note that this file might be not aligned to the current + version of the ETSI Group Specification it refers to. In case of + discrepancies the published ETSI Group Specification takes precedence. + + + In clause 4.3.2 of ETSI GS NFV-SOL 002 v2.4.1, an attribute-based + filtering mechanism is defined. This mechanism is currently not + included in the corresponding OpenAPI design for this GS version. Changes + to the attribute-based filtering mechanism are being considered in v2.5.1 + of this GS for inclusion in the corresponding future ETSI NFV OpenAPI + design. + + Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution= + license: + name: "ETSI Forge copyright notice" + url: https://forge.etsi.org/etsi-forge-copyright-notice.txt + +externalDocs: + description: ETSI GS NFV-SOL 005 V2.5.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf + +basePath: /callback/v1 + +schemes: + - http + - https + +consumes: + - application/json +produces: + - application/json +paths: + ################################################################################## + # Notification endpoint NS Lifecycle Management # + ################################################################################## + '/URI_is_provided_by_the_client_when_creating_the_subscription-NsLcmOperationOccurrenceNotification': + post: + summary: Notify about NS lifecycle change + description: > + 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 + specified in the Tables 6.4.18.3.1-1 and 6.4.18.3.1-2. + + parameters: + - name: NsLcmOperationOccurrenceNotification + description: > + A notification about lifecycle changes triggered by a NS LCM. + operation occurrence. + in: body + required: true + schema: + properties: + NsLcmOperationOccurrenceNotification: + $ref: "definitions/SOL005NSLifecycleManagementNotification_def.yaml#/definitions/NsLcmOperationOccurrenceNotification" + - 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: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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/SOL005_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" + + '/URI_is_provided_by_the_client_when_creating_the_subscription-NsIdentifierCreationNotification': + post: + summary: Notify about NS lifecycle change + description: > + 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 + specified in the Tables 6.4.18.3.1-1 and 6.4.18.3.1-2. + + parameters: + - name: NsIdentifierCreationNotification + description: > + A notification about the creation of a NS identifier and the related + NS instance resource. + in: body + required: true + schema: + properties: + NsIdentifierCreationNotification: + $ref: "definitions/SOL005NSLifecycleManagementNotification_def.yaml#/definitions/NsIdentifierCreationNotification" + - 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: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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/SOL005_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" + + '/URI_is_provided_by_the_client_when_creating_the_subscription-NsIdentifierDeletionNotification': + post: + summary: Notify about NS lifecycle change + description: > + 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 + specified in the Tables 6.4.18.3.1-1 and 6.4.18.3.1-2. + + parameters: + - name: NsIdentifierDeletionNotification + description: > + A notification about the deletion of a NS identifier and the related + NS instance resource. + in: body + required: true + schema: + properties: + NsIdentifierDeletionNotification: + $ref: "definitions/SOL005NSLifecycleManagementNotification_def.yaml#/definitions/NsIdentifierDeletionNotification" + - 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: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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/SOL005_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" + + 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. + 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: 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 + description: > + 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: + $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/SOL005_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" \ No newline at end of file diff --git a/src/SOL005/NSLifecycleManagementNotification/definitions/SOL005NSLifecycleManagementNotification_def.yaml b/src/SOL005/NSLifecycleManagementNotification/definitions/SOL005NSLifecycleManagementNotification_def.yaml new file mode 100644 index 0000000000000000000000000000000000000000..50fecf33afea8af8f3fba539faf3e60187b556e9 --- /dev/null +++ b/src/SOL005/NSLifecycleManagementNotification/definitions/SOL005NSLifecycleManagementNotification_def.yaml @@ -0,0 +1,174 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +definitions: + NsLcmOperationOccurrenceNotification: + type: object + required: + - id + - nsInstanceId + - nsLcmOpOccId + - subscriptionId + properties: + id: + 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. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + nsInstanceId: + description: > + The identifier of the NS instance affected. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + nsLcmOpOccId: + description: > + The identifier of the NS lifecycle operation occurrence + associated to the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + operation: + description: > + The lifecycle operation. + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpType" + notificationType: + description: > + Discriminator for the different notification types. Shall be + set to "NsLcmOperationOccurrenceNotification" for this + notification type. + type: string + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timestamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + notificationStatus: + description: > + Indicates whether this notification reports about the start + of a NS lifecycle operation or the result of a NS lifecycle + operation. + Permitted values: + - START: Informs about the start of the NS LCM + operation occurrence. + - RESULT: Informs about the final or intermediate + result of the NS LCM operation occurrence. + type: string + enum: + - START + - RESULT + operationState: + description: > + The state of the NS lifecycle operation occurrence. + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOperationStateType" + isAutomaticInvocation: + description: > + Set to true if this NS LCM operation occurrence has + been automatically triggered by the NFVO. This occurs + in case of auto-scaling, auto-healing and when a nested + NS is modified as a result of an operation on its + composite NS. Set to false otherwise. + type: boolean + affectedVnf: + description: > + Information about the VNF instances that were affected + during the lifecycle operation. + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnf" + affectedPnf: + description: > + Information about the PNF instances that were affected + during the lifecycle operation. + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedPnf" + affectedVl: + description: > + Information about the VL instances that were affected + during the lifecycle operation. + type: array + items: + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVirtualLink" + affectedVnffg: + description: > + Information about the VNFFG instances that were + affected during the lifecycle operation. + type: array + items: + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnffg" + affectedNs: + description: > + Information about the SAP instances that were affected + during the lifecycle operation. See note. + type: array + items: + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedSap" + affectedSap: + description: > + The lifecycle operation. + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpType" + error: + description: > + Details of the latest error, if one has occurred during + executing the LCM operation (see clause 4.3.5). Shall + be present if operationState is "FAILED_TEMP" or + "FAILED", and shall be absent otherwise. + $ref: "../../definitions/SOL005_def.yaml#/definitions/ProblemDetails" + _links: + description: > + Links to resources related to this notification. + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnLinks" + + NsIdentifierCreationNotification: + type: object + required: + - subscriptionId + - nsInstanceId + properties: + notificationType: + description: > + 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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timestamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + nsInstanceId: + description: > + The created NS instance identifier + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnLinks" + + NsIdentifierDeletionNotification: + type: object + required: + - subscriptionId + - nsInstanceId + properties: + notificationType: + description: > + 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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timestamp: + description: > + Date-time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + nsInstanceId: + description: > + The created NS instance identifier + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "../../NSLifecycleManagement/definitions/SOL005NSLifecycleManagement_def.yaml#/definitions/LccnLinks" \ No newline at end of file diff --git a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml index dd614998c8d06501b6e890139445fec036146d88..d80dd60aa919826e3e88d3d86fa86ec47181f131 100644 --- a/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml +++ b/src/SOL005/NSPerformanceManagement/NSPerformanceManagement.yaml @@ -1146,288 +1146,5 @@ paths: $ref: "../responses/SOL005_resp.yaml#/responses/406" 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.# - ################################################################################## - '/URI_is_provided_by_the_client_when_creating_the_subscription-PerformanceInformationAvailableNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.9 - parameters: - - 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 - - post: - summary: Notify about PM related events - description: > - The POST method delivers a notification regarding a performance management event from the server to the client. - 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: - - name: PerformanceInformationAvailableNotification - description: > - Notification about performance information availability. - in: body - required: true - schema: - $ref: "definitions/SOL005NSPerformanceManagement_def.yaml#/definitions/PerformanceInformationAvailableNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231 - in: header - required: true - type: string - responses: - 204: - description: > - 204 NO CONTENT - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $ref: "../responses/SOL005_resp.yaml#/responses/500" - 503: - $ref: "../responses/SOL005_resp.yaml#/responses/503" - - get: - summary: Test the notification endpoint - description: > - 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 - Tables 7.4.9.3.2-1 and 7.4.9.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. - Reference: IETF RFC 7231. - 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 - description: > - 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: - $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" - 500: - $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-ThresholdCrossedNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.9 - parameters: - - 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 - - post: - summary: Notify about PM related events - description: > - The POST method delivers a notification regarding a performance management event from the server to the client. - 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: - - name: ThresholdCrossedNotification - description: > - Notification about threshold crossing. - in: body - required: true - schema: - $ref: "definitions/SOL005NSPerformanceManagement_def.yaml#/definitions/ThresholdCrossedNotification" - - name: Accept - description: > - Content-Types that are acceptable for the response. - Reference: IETF RFC 7231 - in: header - required: true - type: string - - name: Content-Type - description: > - The MIME type of the body of the request. - Reference: IETF RFC 7231. - in: header - required: true - type: string - responses: - 204: - description: > - 204 NO CONTENT - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: string - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $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" - 500: - $ref: "../responses/SOL005_resp.yaml#/responses/500" - 503: - $ref: "../responses/SOL005_resp.yaml#/responses/503" - - get: - summary: Test the notification endpoint - description: > - 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 - Tables 7.4.9.3.2-1 and 7.4.9.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. - Reference: IETF RFC 7231. - 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 - description: > - 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: - $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" - 500: - $ref: "../responses/SOL005_resp.yaml#/responses/500" 503: $ref: "../responses/SOL005_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerformanceManagement_def.yaml b/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerformanceManagement_def.yaml index 49ed21aad24c51894f1878a79ccf989fb1e91e35..9b84944bfd3b99d61ffb6bf8d70b83143116a1d9 100644 --- a/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerformanceManagement_def.yaml +++ b/src/SOL005/NSPerformanceManagement/definitions/SOL005NSPerformanceManagement_def.yaml @@ -64,166 +64,6 @@ definitions: URI of this resource. $ref: "../../definitions/SOL005_def.yaml#/definitions/Link" - ThresholdCrossedNotification: - description: > - This type represents a notification that is sent when a threshold has been crossed. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - thresholdId - - crossingDirection - - objectInstanceId - - performanceMetric - - performanceValue - - _links - properties: - id: - 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.. - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. - Shall be set to "ThresholdCrossedNotification " - for this notification type. - type: string - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date and time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - thresholdId: - description: > - Identifier of the threshold which has been crossed. - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - crossingDirection: - description: > - An indication of whether the threshold was crossed in upward or downward direction. - $ref: "#/definitions/CrossingDirectionType" - objectInstanceId: - description: > - Identifier that identifies a NS instance. - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - 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. - 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: > - Links to resources related to this notification. - type: object - required: - - subscription - - objectInstance - - threshold - properties: - subscription: - description: > - Link to the related subscription. - $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: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - threshold: - description: > - Link to the resource that represents the - threshold that was crossed. - $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - - PerformanceInformationAvailableNotification: - description: > - This notification informs the receiver that performance information is available. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - objectInstanceId - - _links - properties: - id: - 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. - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. - Shall be set to - "PerformanceInformationAvailableNotification" - for this notification type. - type: string - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date and time of the generation of the notification. - $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" - objectInstanceId: - description: > - Identifier that identifies a NS instance. - $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - subscription - - pmJob - - performanceReport - properties: - subscription: - description: > - Link to the related subscription. - $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: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - pmJob: - description: > - Link to the resource that represents the PM job - for which performance information is available. - $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - performanceReport: - description: > - Link from which the available performance - information of data type "PerformanceReport" - (see clause 7.5.2.10) can be obtained. - This link should point to an "Individual - performance report" resource as defined in - clause 6.4.3a. - $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" - CreatePmJobRequest: description: > This type represents a request to create a PM job. @@ -585,15 +425,4 @@ definitions: threshold, implementations should enforce a suitable minimum value for this attribute (e.g. override the value or reject the request). - type: integer - - CrossingDirectionType: - description: > - The enumeration CrossingDirectionType shall comply with the provisions. - Acceptable Values are: - UP - The threshold was crossed in upward direction. - DOWN - The threshold was crossed in downward direction. - type: string - enum: - - UP - - DOWN \ No newline at end of file + type: integer \ No newline at end of file diff --git a/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml b/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml new file mode 100644 index 0000000000000000000000000000000000000000..61766ca6cf4111f930303fe2087ac9db84fc7138 --- /dev/null +++ b/src/SOL005/NSPerformanceManagementNotification/NSPerformanceManagementNotification.yaml @@ -0,0 +1,319 @@ +swagger: "2.0" + +info: + version: "1.2.0" + title: "SOL005 - NS Performance Management Notification interface" + description: > + SOL005 - NS Performance Management Notification interface + + + IMPORTANT: Please note that this file might be not aligned to the current + version of the ETSI Group Specification it refers to. In case of + discrepancies the published ETSI Group Specification takes precedence. + + + In clause 4.3.2 of ETSI GS NFV-SOL 002 v2.4.1, an attribute-based + filtering mechanism is defined. This mechanism is currently not + included in the corresponding OpenAPI design for this GS version. Changes + to the attribute-based filtering mechanism are being considered in v2.5.1 + of this GS for inclusion in the corresponding future ETSI NFV OpenAPI + design. + + Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution= + license: + name: "ETSI Forge copyright notice" + url: https://forge.etsi.org/etsi-forge-copyright-notice.txt + +externalDocs: + description: ETSI GS NFV-SOL 005 V2.5.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf + +basePath: /callback/v1 + +schemes: + - http + - https + +consumes: + - application/json +produces: + - application/json +paths: + ################################################################################## + # Notification endpoint NS Performance Management # + ################################################################################## + '/URI_is_provided_by_the_client_when_creating_the_subscription-PerformanceInformationAvailableNotification': + parameters: + - 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 + + post: + summary: Notify about PM related events + description: > + The POST method delivers a notification regarding a performance management event from the server to the client. + 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: + - name: PerformanceInformationAvailableNotification + description: > + Notification about performance information availability. + in: body + required: true + schema: + $ref: "definitions/SOL005NSPerformanceManagementNotification_def.yaml#/definitions/PerformanceInformationAvailableNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231 + in: header + required: true + type: string + responses: + 204: + description: > + 204 NO CONTENT + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $ref: "../responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "../responses/SOL005_resp.yaml#/responses/503" + + get: + summary: Test the notification endpoint + description: > + 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 + Tables 7.4.9.3.2-1 and 7.4.9.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. + Reference: IETF RFC 7231. + 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 + description: > + 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: + $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" + 500: + $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-ThresholdCrossedNotification': + parameters: + - 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 + + post: + summary: Notify about PM related events + description: > + The POST method delivers a notification regarding a performance management event from the server to the client. + 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: + - name: ThresholdCrossedNotification + description: > + Notification about threshold crossing. + in: body + required: true + schema: + $ref: "definitions/SOL005NSPerformanceManagementNotification_def.yaml#/definitions/ThresholdCrossedNotification" + - name: Accept + description: > + Content-Types that are acceptable for the response. + Reference: IETF RFC 7231 + in: header + required: true + type: string + - name: Content-Type + description: > + The MIME type of the body of the request. + Reference: IETF RFC 7231. + in: header + required: true + type: string + responses: + 204: + description: > + 204 NO CONTENT + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $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" + 500: + $ref: "../responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "../responses/SOL005_resp.yaml#/responses/503" + + get: + summary: Test the notification endpoint + description: > + 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 + Tables 7.4.9.3.2-1 and 7.4.9.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. + Reference: IETF RFC 7231. + 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 + description: > + 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: + $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" + 500: + $ref: "../responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "../responses/SOL005_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL005/NSPerformanceManagementNotification/definitions/SOL005NSPerformanceManagementNotification_def.yaml b/src/SOL005/NSPerformanceManagementNotification/definitions/SOL005NSPerformanceManagementNotification_def.yaml new file mode 100644 index 0000000000000000000000000000000000000000..76ce1fe1a0167f0382c3fd27fe4cff82ff3e4809 --- /dev/null +++ b/src/SOL005/NSPerformanceManagementNotification/definitions/SOL005NSPerformanceManagementNotification_def.yaml @@ -0,0 +1,173 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +definitions: + PerformanceInformationAvailableNotification: + description: > + This notification informs the receiver that performance information is available. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - objectInstanceId + - _links + properties: + id: + 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. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. + Shall be set to + "PerformanceInformationAvailableNotification" + for this notification type. + type: string + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + objectInstanceId: + description: > + Identifier that identifies a NS instance. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + - pmJob + - performanceReport + properties: + subscription: + description: > + Link to the related subscription. + $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: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + pmJob: + description: > + Link to the resource that represents the PM job + for which performance information is available. + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + performanceReport: + description: > + Link from which the available performance + information of data type "PerformanceReport" + (see clause 7.5.2.10) can be obtained. + This link should point to an "Individual + performance report" resource as defined in + clause 6.4.3a. + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + + ThresholdCrossedNotification: + description: > + This type represents a notification that is sent when a threshold has been crossed. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - thresholdId + - crossingDirection + - objectInstanceId + - performanceMetric + - performanceValue + - _links + properties: + id: + 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.. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. + Shall be set to "ThresholdCrossedNotification " + for this notification type. + type: string + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + thresholdId: + description: > + Identifier of the threshold which has been crossed. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + crossingDirection: + description: > + An indication of whether the threshold was crossed in upward or downward direction. + $ref: "#/definitions/CrossingDirectionType" + objectInstanceId: + description: > + Identifier that identifies a NS instance. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + 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. + 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: > + Links to resources related to this notification. + type: object + required: + - subscription + - objectInstance + - threshold + properties: + subscription: + description: > + Link to the related subscription. + $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: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + threshold: + description: > + Link to the resource that represents the + threshold that was crossed. + $ref: "../../definitions/SOL005_def.yaml#/definitions/NotificationLink" + + CrossingDirectionType: + description: > + The enumeration CrossingDirectionType shall comply with the provisions. + Acceptable Values are: + UP - The threshold was crossed in upward direction. + DOWN - The threshold was crossed in downward direction. + type: string + enum: + - UP + - DOWN \ No newline at end of file diff --git a/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml index ca972e7e4ccd0090ffaf237c786b271960457a54..9fe64b30682d0b36d93a012133fc69292d4dd8ae 100644 --- a/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL005/VNFPackageManagement/VNFPackageManagement.yaml @@ -2,7 +2,7 @@ swagger: "2.0" info: version: "1.2.0" - title: SOL005 - VNF Package Management Interface + title: "SOL005 - VNF Package Management Interface" description: > SOL005 - VNF Package Management Interface IMPORTANT: Please note that this file might be not aligned to the current @@ -18,13 +18,14 @@ info: externalDocs: description: ETSI GS NFV-SOL 005 V2.5.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf -basePath: "/vnfpkgm/v1" +basePath: /vnfpkgm/v1 schemes: + - http - https consumes: - - "application/json" + - application/json produces: - - "application/json" + - application/json paths: ############################################################################### # API Versions # @@ -137,7 +138,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 @@ -161,25 +162,25 @@ paths: items: properties: VnfPkgInfo: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo" + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/VnfPkgInfo" 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" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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 individual VNF package resource. @@ -213,19 +214,13 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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 - + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/CreateVnfPkgInfoRequest" + description: > + IndividualVNF package resource creation parameters, as defined in clause 9.5.2.2 responses: 201: description: > @@ -241,10 +236,10 @@ paths: schema: properties: VnfPkgInfo: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo" + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/VnfPkgInfo" 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 @@ -252,7 +247,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 @@ -265,17 +260,18 @@ paths: type: string maximum: 1 minimum: 1 + ############################################################################### # Individual VNF Package # ############################################################################### '/vnf_packages/{vnfPkgId}': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.3 parameters: - - name: "vnfPkgId" + - name: vnfPkgId description: > Identifier of the VNF package. The identifier is allocated by the NFVO. - in: "path" - type: "string" + in: path + type: string required: true get: summary: Read information about an individual VNF package. @@ -311,18 +307,15 @@ paths: The response body shall contain the VNF package info representation defined in clause 9.5.2.5. schema: - type: "object" - properties: - VnfPkgInfo: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfo" + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/VnfPkgInfo" 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 @@ -336,23 +329,23 @@ 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" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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 VNF package. description: > @@ -378,26 +371,26 @@ paths: The VNF package was deleted successfully. The response body shall be empty. - 409: - $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409" 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/SOL005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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: Update information about an individual VNF package. description: > @@ -407,18 +400,13 @@ paths: 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" + - 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. + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/VnfPkgInfoModifications" + description: > + Parameters for VNF package information modifications. - name: Authorization description: > The authorization token for the request. @@ -455,7 +443,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 @@ -469,29 +457,27 @@ paths: maximum: 1 minimum: 1 schema: - properties: - VnfPkgInfoModifications: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPkgInfoModifications" - 409: - $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409" + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/VnfPkgInfoModifications" 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/SOL005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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" ############################################################################### # VNFD in an individual VNF package # @@ -568,7 +554,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 @@ -582,31 +568,25 @@ 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: - 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/SOL005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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" ############################################################################### # VNF Package Content # @@ -614,12 +594,12 @@ paths: '/vnf_packages/{vnfPkgId}/package_content': #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.5 parameters: - - name: "vnfPkgId" + - name: vnfPkgId description: > Identifier of the VNF package. The identifier is allocated by the NFVO. - in: "path" + in: path required: true - type: "string" + type: string get: summary: Fetch an on-boarded VNF package. description: > @@ -642,10 +622,10 @@ paths: in: header required: false type: string - - name: "Range" - in: "header" + - name: Range + in: header required: false - type: "string" + 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 @@ -677,7 +657,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 @@ -691,28 +671,27 @@ paths: maximum: 1 minimum: 1 206: - $ref: "responses/SOL005_resp.yaml#/responses/206" - 409: - description: > - $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409-state-conflict-ONBOARDING" - 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_resp.yaml#/responses/206" 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/SOL005_resp.yaml#/responses/409" + 416: + $ref: "../responses/SOL005_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 a VNF package by providing the content of the VNF package. @@ -763,25 +742,24 @@ paths: processing has not been completed. It is expected to take some time for processing. The response body shall be empty. - 409: - description: > - $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409-state-conflict-ONBOARDING-NOT-CREATED" 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/SOL005_resp.yaml#/responses/409" 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" ############################################################################### # Upload VNF package from URI task # @@ -817,34 +795,26 @@ paths: in: header required: true type: string - - - name: "vnfPkgId" + - name: vnfPkgId description: > Identifier of the VNF package. The identifier is allocated by the NFVO. - in: "path" + in: path required: true - type: "string" - - - name: "body" - in: "body" + 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. + $ref: "definitions/SOL005VNFPackageManagement_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. - name: Version description: > Version of the API requested to use when responding to this request. in: header required: true type: string - responses: 202: description: > @@ -855,23 +825,23 @@ paths: completed. It is expected to take some time for processing. The response body shall be empty. 409: - $ref: "responses/VNFPackageManagement_resp.yaml#/responses/409-state-conflict-ONBOARDING-NOT-CREATED" + $ref: "../responses/SOL005_resp.yaml#/responses/409" 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" 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 VNF package artifact # @@ -954,44 +924,7 @@ paths: 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 - Version: - description: > - Version of the API used in the response. type: string - maximum: 1 - minimum: 1 - - 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 @@ -1004,26 +937,28 @@ paths: type: string maximum: 1 minimum: 1 + 206: + $ref: "../responses/SOL005_resp.yaml#/responses/206" 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/VNFPackageManagement_resp.yaml#/responses/409" + $ref: "../responses/SOl005_resp.yaml#/responses/409" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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 # @@ -1070,21 +1005,15 @@ paths: in: header required: true type: string - - name: "body" - in: "body" + - 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. - + $ref: "definitions/SOL005VNFPackageManagement_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: > @@ -1100,7 +1029,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 @@ -1116,29 +1045,27 @@ paths: schema: type: array items: - properties: - PkgmSubscription: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/PkgmSubscription" 303: - $ref: "responses/SOL005_resp.yaml#/responses/303" + $ref: "../responses/SOL005_resp.yaml#/responses/303" 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" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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: Query multiple subscriptions. description: > @@ -1198,7 +1125,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 @@ -1220,27 +1147,25 @@ paths: schema: type: array items: - properties: - PkgmSubscription: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/PkgmSubscription" 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" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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 # @@ -1297,7 +1222,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 @@ -1313,25 +1238,25 @@ paths: schema: properties: PkgmSubscription: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription" + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/PkgmSubscription" 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" 416: - $ref: "responses/SOL005_resp.yaml#/responses/416" + $ref: "../responses/SOL005_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 a subscription. description: > @@ -1358,7 +1283,7 @@ paths: The subscription resource was deleted 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 @@ -1372,227 +1297,20 @@ 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" 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.# - ################################################################################## - '/URI_is_provided_by_the_client_when_creating_the_subscription-VnfPackageOnboardingNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.10 - post: - summary: Notify about VNF package onboarding or change - description: > - The POST method delivers a notification from the server to the client. - 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: - - name: VnfPackageOnboardingNotification - description: > - A notification about on-boarding of a VNF package. - in: body - required: true - schema: - properties: - VnfPackageOnboardingNotification: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPackageOnboardingNotification" - - 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: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $ref: "responses/SOL005_resp.yaml#/responses/401" - 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" - 500: - $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-VnfPackageChangeNotification': - #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.10 - post: - summary: Notify about VNF package onboarding or change - description: > - The POST method delivers a notification from the server to the client. - 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: - - name: VnfPackageChangeNotification - description: > - A notification about changes of status in a VNF package. - in: body - required: true - schema: - properties: - VnfPackageChangeNotification: - $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPackageChangeNotification" - - 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: - 204: - description: > - 204 No Content - - The notification was delivered successfully. - headers: - WWW-Authenticate: - type: "string" - description: > - Challenge if the corresponding HTTP request has not provided - authorization, or error details if the corresponding HTTP request - has provided an invalid authorization token. - 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: - $ref: "responses/SOL005_resp.yaml#/responses/401" - 403: - $ref: "responses/SOL005_resp.yaml#/responses/403" - 500: - $ref: "responses/SOL005_resp.yaml#/responses/500" - 503: - $ref: "responses/SOL005_resp.yaml#/responses/503" - - get: - summary: Test the notification endpoint - description: > - 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 Tables 9.4.10.3.2-1 and 9.4.10.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. - 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: 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. - 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/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/VNFPackageManagement/definitions/SOL005VNFPMManagement_def.yaml b/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml similarity index 76% rename from src/SOL005/VNFPackageManagement/definitions/SOL005VNFPMManagement_def.yaml rename to src/SOL005/VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml index ca6610e70d7852dd4791c2e50456a58d7329d168..fe2cc1c4d737df1d830524baf6071fce7708b39a 100644 --- a/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPMManagement_def.yaml +++ b/src/SOL005/VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml @@ -288,11 +288,12 @@ definitions: "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). + - 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. @@ -417,9 +418,10 @@ definitions: PkgmNotificationsFilter: description: > This type represents a subscription filter related to notifications related to VNF package management. - 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). + At a particular nesting level in the filter structure, the following applies: All attributes shall match + in order for the filter to match (logical "and" between different filter attributes). + If an attribute is an array, the attribute shall match if at least one of the values in the array matches + (logical "or" between the values of one filter attribute). type: object properties: notificationTypes: @@ -526,138 +528,13 @@ definitions: items: $ref: "#/definitions/PackageUsageStateType" - VnfPackageOnboardingNotification: - description: > - This type represents a VNF package management notification, which informs the receiver that the on boarding process - of a VNF package incomplete and the package is ready for use. A change of the on-boarding state before the VNF - package is on-boarded is not reported. It shall comply with the provisions defined in Table 9.5.2.8-1. The support of this - notification is mandatory. The notification shall be triggered by the NFVO when the value of the "onboardingState" - attribute of a new VNF package has changed to "ONBOARDED". - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - vnfPkgId - - vnfdId - - _links - properties: - id: - 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. - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. - Shall be set to "VnfPackageOnboardingNotification" for - this notification type. - type: string - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date and time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - vnfPkgId: - description: > - Identifier of the VNF package. This identifier - is allocated by the NFVO. - Its value is the same as the value of the "id" attribute of - the related "Individual VNF package" resource. - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfdId: - description: > - This identifier, which is managed by the VNF provider, - 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" - _links: - description: > - Links to resources related to this notification. - $ref: "#/definitions/PkgmLinks" - - VnfPackageChangeNotification: - description: > - This type represents a VNF package management notification, which informs the receiver of a change of the status in an - on-boarded VNF package. Only changes in the "operationalState" attribute of an on-boarded VNF package and the - deletion of the VNF package will be reported. Change in the "usageState" and "onboardingState" attributes are not - reported. The notification shall comply with the provisions defined in Table 9.5.2.9-1. The support of this notification is - mandatory. The notification shall be triggered by the NFVO when there is a change in the status of an onboarded VNF - package, as follows. - • The "operationalState" attribute of a VNF package has changed, and the "onboardingState" attribute of the - package has the value "ONBOARDED". - • The on-boarded VNF package has been deleted. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - vnfPkgId - - vnfdId - - changeType - - _links - properties: - id: - 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. - $ref: "SOL005_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. - Shall be set to "VnfPackageChangeNotification" for this - notification type. - type: string - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "SOL005_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date and time of the generation of the notification. - $ref: "SOL005_def.yaml#/definitions/DateTime" - vnfPkgId: - description: > - Identifier of the on-boarded VNF package. This identifier - is allocated by the NFVO. - Its value is the same as the value of the "id" attribute of - the related "Individual VNF package" resource. - $ref: "SOL005_def.yaml#/definitions/Identifier" - vnfdId: - description: > - Identifier of the VNFD contained in the VNF package, - which also identifies the VNF package. This identifier is - allocated by the VNF provider and copied from the VNFD. - $ref: "SOL005_def.yaml#/definitions/Identifier" - changeType: - description: > - The type of change of the VNF package. - $ref: "#/definitions/PackageChangeType" - operationalState: - description: > - New operational state of the VNF package. - Only present when changeType is OP_STATE_CHANGE. - $ref: "#/definitions/PackageOperationalStateType" - _links: - description: > - Links to resources related to this notification. - $ref: "#/definitions/PkgmLinks" - PackageChangeType: - type: "string" + type: string 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/responses/VNFPackageManagement_resp.yaml b/src/SOL005/VNFPackageManagement/responses/SOL005VNFPackageManagement_resp.yaml similarity index 100% rename from src/SOL005/VNFPackageManagement/responses/VNFPackageManagement_resp.yaml rename to src/SOL005/VNFPackageManagement/responses/SOL005VNFPackageManagement_resp.yaml diff --git a/src/SOL005/VNFPackageManagement/responses/SOL005_resp.yaml b/src/SOL005/VNFPackageManagement/responses/SOL005_resp.yaml deleted file mode 100644 index 0460e151a6753a0ed8bd9eab07f4fb0bca293335..0000000000000000000000000000000000000000 --- a/src/SOL005/VNFPackageManagement/responses/SOL005_resp.yaml +++ /dev/null @@ -1,426 +0,0 @@ -# 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: - 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 - 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 diff --git a/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml b/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml new file mode 100644 index 0000000000000000000000000000000000000000..a5a68d4bc71c917963fd9dfa614bb3225a165e3e --- /dev/null +++ b/src/SOL005/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml @@ -0,0 +1,243 @@ +swagger: "2.0" + +info: + version: "1.2.0" + title: "SOL005 - VNF Package Management Notification interface" + description: > + SOL005 - VNF Package Management Notification interface + + + IMPORTANT: Please note that this file might be not aligned to the current + version of the ETSI Group Specification it refers to. In case of + discrepancies the published ETSI Group Specification takes precedence. + + + In clause 4.3.2 of ETSI GS NFV-SOL 002 v2.4.1, an attribute-based + filtering mechanism is defined. This mechanism is currently not + included in the corresponding OpenAPI design for this GS version. Changes + to the attribute-based filtering mechanism are being considered in v2.5.1 + of this GS for inclusion in the corresponding future ETSI NFV OpenAPI + design. + + Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution= + license: + name: "ETSI Forge copyright notice" + url: https://forge.etsi.org/etsi-forge-copyright-notice.txt + +externalDocs: + description: ETSI GS NFV-SOL 005 V2.5.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.05.01_60/gs_NFV-SOL005v020501p.pdf + +basePath: /callback/v1 + +schemes: + - http + - https + +consumes: + - application/json +produces: + - application/json +paths: + ################################################################################## + # Notification endpoint NS Performance Management # + ################################################################################## + '/URI_is_provided_by_the_client_when_creating_the_subscription-VnfPackageOnboardingNotification': + post: + summary: Notify about VNF package onboarding or change + description: > + The POST method delivers a notification from the server to the client. + 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: + - name: VnfPackageOnboardingNotification + description: > + A notification about on-boarding of a VNF package. + in: body + required: true + schema: + properties: + VnfPackageOnboardingNotification: + $ref: "definitions/SOL005VNFPackageManagementNotification_def.yaml#/definitions/VnfPackageOnboardingNotification" + - 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: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $ref: "../responses/SOL005_resp.yaml#/responses/401" + 403: + $ref: "../responses/SOL005_resp.yaml#/responses/403" + 500: + $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-VnfPackageChangeNotification': + post: + summary: Notify about VNF package onboarding or change + description: > + The POST method delivers a notification from the server to the client. + 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: + - name: VnfPackageChangeNotification + description: > + A notification about changes of status in a VNF package. + in: body + required: true + schema: + properties: + VnfPackageChangeNotification: + $ref: "definitions/SOL005VNFPackageManagement_def.yaml#/definitions/VnfPackageChangeNotification" + - 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: + 204: + description: > + 204 No Content + + The notification was delivered successfully. + headers: + WWW-Authenticate: + type: string + description: > + Challenge if the corresponding HTTP request has not provided + authorization, or error details if the corresponding HTTP request + has provided an invalid authorization token. + 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: + $ref: "../responses/SOL005_resp.yaml#/responses/401" + 403: + $ref: "../responses/SOL005_resp.yaml#/responses/403" + 500: + $ref: "../responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "../responses/SOL005_resp.yaml#/responses/503" + + get: + summary: Test the notification endpoint + description: > + 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 Tables 9.4.10.3.2-1 and 9.4.10.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. + 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: 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. + 400: + $ref: "../responses/SOL005_resp.yaml#/responses/400" + 401: + $ref: "../responses/SOL005_resp.yaml#/responses/401" + 403: + $ref: "../responses/SOL005_resp.yaml#/responses/403" + 500: + $ref: "../responses/SOL005_resp.yaml#/responses/500" + 503: + $ref: "../responses/SOL005_resp.yaml#/responses/503" \ No newline at end of file diff --git a/src/SOL005/VNFPackageManagementNotification/definitions/SOL005VNFPackageManagementNotification_def.yaml b/src/SOL005/VNFPackageManagementNotification/definitions/SOL005VNFPackageManagementNotification_def.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ef9a9cf7936feffbf6e26f96b11579e6573b431c --- /dev/null +++ b/src/SOL005/VNFPackageManagementNotification/definitions/SOL005VNFPackageManagementNotification_def.yaml @@ -0,0 +1,127 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt +definitions: + VnfPackageOnboardingNotification: + description: > + This type represents a VNF package management notification, which informs the receiver that the on boarding + process of a VNF package incomplete and the package is ready for use. A change of the on-boarding state before + the VNF package is on-boarded is not reported. It shall comply with the provisions defined in Table 9.5.2.8-1. + The support of this notification is mandatory. The notification shall be triggered by the NFVO when the value + of the "onboardingState" attribute of a new VNF package has changed to "ONBOARDED". + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfPkgId + - vnfdId + - _links + properties: + id: + 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. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. + Shall be set to "VnfPackageOnboardingNotification" for + this notification type. + type: string + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + vnfPkgId: + description: > + Identifier of the VNF package. This identifier + is allocated by the NFVO. + Its value is the same as the value of the "id" attribute of + the related "Individual VNF package" resource. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + vnfdId: + description: > + This identifier, which is managed by the VNF provider, + 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: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "../../VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml#/definitions/PkgmLinks" + + VnfPackageChangeNotification: + description: > + This type represents a VNF package management notification, which informs the receiver of a change of + the status in an on-boarded VNF package. Only changes in the "operationalState" attribute of an on-boarded + VNF package and the deletion of the VNF package will be reported. Change in the "usageState" and "onboardingState" + attributes are not reported. The notification shall comply with the provisions defined in Table 9.5.2.9-1. + The support of this notification is mandatory. The notification shall be triggered by the NFVO when there is + a change in the status of an onboarded VNF package, as follows. + - The "operationalState" attribute of a VNF package has changed, and the "onboardingState" attribute of the + package has the value "ONBOARDED". + - The on-boarded VNF package has been deleted. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfPkgId + - vnfdId + - changeType + - _links + properties: + id: + 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. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. + Shall be set to "VnfPackageChangeNotification" for this + notification type. + type: string + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../definitions/SOL005_def.yaml#/definitions/DateTime" + vnfPkgId: + description: > + Identifier of the on-boarded VNF package. This identifier + is allocated by the NFVO. + Its value is the same as the value of the "id" attribute of + the related "Individual VNF package" resource. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + vnfdId: + description: > + Identifier of the VNFD contained in the VNF package, + which also identifies the VNF package. This identifier is + allocated by the VNF provider and copied from the VNFD. + $ref: "../../definitions/SOL005_def.yaml#/definitions/Identifier" + changeType: + description: > + The type of change of the VNF package. + $ref: "../../VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml#/definitions/PackageChangeType" + operationalState: + description: > + New operational state of the VNF package. + Only present when changeType is OP_STATE_CHANGE. + $ref: "../../VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml#/definitions/PackageOperationalStateType" + _links: + description: > + Links to resources related to this notification. + $ref: "../../VNFPackageManagement/definitions/SOL005VNFPackageManagement_def.yaml#/definitions/PkgmLinks" \ No newline at end of file diff --git a/src/SOL005/definitions/SOL005_def.yaml b/src/SOL005/definitions/SOL005_def.yaml index 6efa0ac2f918576578f2a0ab62de5afc57e976bf..cfc7c8b8c03dd0a16a3e6fa1c051daaeb56176e7 100644 --- a/src/SOL005/definitions/SOL005_def.yaml +++ b/src/SOL005/definitions/SOL005_def.yaml @@ -278,6 +278,8 @@ definitions: type: array items: type: object + required: + - version properties: version: description: > diff --git a/src/SOL005/responses/SOL005_resp.yaml b/src/SOL005/responses/SOL005_resp.yaml index 5c1258a21a4a7993b5fe1f4da58c9ee391b7cd9e..c3c3c91752751606e4c7a6f976ffaddf0c68b668 100644 --- a/src/SOL005/responses/SOL005_resp.yaml +++ b/src/SOL005/responses/SOL005_resp.yaml @@ -60,7 +60,7 @@ responses: 400: description: > - BAD REQUEST + 400 BAD REQUEST 400 code can be returned in the following specified cases, the specific cause has to be proper specified in the "ProblemDetails" structure to be returned. @@ -111,7 +111,7 @@ responses: 401: description: > - UNAUTHORIZED + 401 UNAUTHORIZED If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 @@ -141,7 +141,7 @@ responses: 403: description: > - FORBIDDEN + 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information about the source of the problem, @@ -171,7 +171,7 @@ responses: 404: description: > - NOT FOUND + 404 NOT FOUND If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. The "ProblemDetails" structure may be provided, including in the "detail" attribute information about @@ -206,7 +206,7 @@ responses: 405: description: > - METHOD NOT ALLOWED + 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. headers: @@ -234,7 +234,7 @@ responses: 406: description: > - NOT ACCEPTABLE + 406 NOT ACCEPTABLE If the "Accept" header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this response code. The "ProblemDetails" structure may be omitted. @@ -349,7 +349,7 @@ responses: 414: description: > - URI TOO LONG + 414 URI TOO LONG If the request URI of a request is longer than the API producer is willing or able to process, it shall respond with this response code. This condition can e.g. be caused by passing long queries in the request URI of a GET request. The "ProblemDetails" structure may be omitted. @@ -404,7 +404,7 @@ responses: 422: description: > - UNPROCESSABLE ENTITY + 422 UNPROCESSABLE ENTITY If the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data cannot be processed (e.g. because it fails validation against a schema), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" @@ -436,7 +436,7 @@ responses: 429: description: > - TOO MANY REQUESTS + 429 TOO MANY REQUESTS If the API consumer has sent too many requests in a defined period of time and the API producer is able to detect that condition ("rate limiting"), the API producer shall respond with this response code, following the provisions in IETF RFC 6585 [17] for the use of the "Retry-After" HTTP header. @@ -470,7 +470,7 @@ responses: 500: description: > - INTERNAL SERVER ERROR + 500 INTERNAL SERVER ERROR If there is an application error not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information @@ -500,7 +500,7 @@ responses: 503: description: > - SERVICE UNAVAILABLE + 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, it should respond with this response code, following the provisions in IETF RFC 7231 for the use of the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" @@ -530,7 +530,7 @@ responses: 504: description: > - GATEWAY TIMEOUT + 504 GATEWAY TIMEOUT If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond with this response code.