X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FSOL005.git;a=blobdiff_plain;f=osm-openapi.yaml;h=594becb991b0705eedf85fbcdaf86adcf662bbfb;hp=958b39f764cc3c8082b5dd840d0a9441bbca01a8;hb=HEAD;hpb=778499832eb0a55152cb46746bc3b7fdea5fef71 diff --git a/osm-openapi.yaml b/osm-openapi.yaml index 958b39f..e9eaad4 100644 --- a/osm-openapi.yaml +++ b/osm-openapi.yaml @@ -1407,6 +1407,12 @@ paths: description: NS Instance ID schema: type: string + - name: vcaStatusRefresh + in: query + required: false + description: Set to true if vca status needs to be refreshed. + schema: + type: boolean get: tags: - "NS instances" @@ -1599,6 +1605,118 @@ paths: $ref: '#/components/responses/UnexpectedError' default: $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/ns_instances/{nsInstanceId}/heal': + parameters: + - name: nsInstanceId + in: path + required: true + description: NS Instance ID + schema: + type: string + post: + tags: + - "NS instances" + summary: Heal a NS instance + description: | + Heal a NS instance. The precondition is that the NS instance must have + been created and must be in INSTANTIATED state. As a result of the + success of this operation, the NFVO creates a "NS Lifecycle Operation + Occurrence" resource for the request, and the NS instance state remains + INSTANTIATED. + operationId: healNSinstance + requestBody: + $ref: '#/components/requestBodies/HealNsRequest' + responses: + '202': + description: Accepted + headers: + Location: + description: | + It must point to the new "NS Lifecycle Operation Occurrence" + resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}" + schema: + type: string + format: uri + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/ns_instances/{nsInstanceId}/migrate': + parameters: + - name: nsInstanceId + in: path + required: true + description: NS Instance ID + schema: + type: string + post: + tags: + - "NS instances" + summary: Migrate VNFs in a NS instance + description: | + Migrate the VNFs and VDUs in a NS instance. The precondition is + that the NS instance must have been created and must be in + INSTANTIATED state. As a result of the success of this operation, + the NFVO creates a "NS Lifecycle Operation Occurrence" resource + for the request, and the NS instance state remains INSTANTIATED. + operationId: migrateNSinstance + requestBody: + $ref: '#/components/requestBodies/NSinstanceMigrateRequest' + responses: + '202': + description: Accepted + headers: + Location: + description: | + It must point to the new "NS Lifecycle Operation Occurrence" + resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}" + schema: + type: string + format: uri + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' '/nslcm/v1/ns_instances/{nsInstanceId}/terminate': parameters: - name: nsInstanceId @@ -1729,6 +1847,115 @@ paths: $ref: '#/components/responses/UnexpectedError' default: $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/ns_instances/{nsInstanceId}/update': + parameters: + - name: nsInstanceId + in: path + required: true + description: NS Instance ID + schema: + type: string + post: + tags: + - "NS instances" + summary: Update a NS instance + description: | + Update a NS instance. The precondition is that the NS instance must have + been created and must be in INSTANTIATED state. As a result of the + success of this operation, the NFVO creates a "NS Lifecycle Operation + Occurrence" resource for the request, and the NS instance state remains + INSTANTIATED. + operationId: updateNSinstance + requestBody: + $ref: '#/components/requestBodies/UpdateNsRequest' + responses: + '202': + description: Accepted + headers: + Location: + description: | + It must point to the new "NS Lifecycle Operation Occurrence" + resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}" + schema: + type: string + format: uri + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/ns_instances/{nsInstanceId}/verticalscale': + parameters: + - name: nsInstanceId + in: path + required: true + description: NS Instance ID + schema: + type: string + post: + tags: + - "NS instances" + summary: Vertical scale a NS instance + description: + Execute an verticalscale on a NS instance. + The NS instance must have been created and must be in INSTANTIATED state. + operationId: verticalscaleNSinstance + requestBody: + $ref: '#/components/requestBodies/VerticalscaleNsRequest' + responses: + '202': + description: Accepted + headers: + Location: + description: | + It must point to the new "NS Lifecycle Operation Occurrence" + resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}" + schema: + type: string + format: uri + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' '/nslcm/v1/ns_instances_content': get: tags: @@ -1971,7 +2198,351 @@ paths: $ref: '#/components/schemas/NsLcmOpOcc' application/yaml: schema: - $ref: '#/components/schemas/NsLcmOpOcc' + $ref: '#/components/schemas/NsLcmOpOcc' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}/cancel': + parameters: + - name: nsLcmOpOccId + in: path + required: true + description: NS LCM Operation Occurrence ID + schema: + type: string + post: + tags: + - "NS instances" + summary: Cancel an ongoing NS lifecycle management operation + description: Cancel an ongoing NS lifecycle management operation while it is being executed or rolled back + operationId: cancelNSLCMOpOcc + requestBody: + $ref: '#/components/requestBodies/CancelNSLCMOpOccRequest' + responses: + '202': + description: Accepted + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/vnf_instances': + get: + tags: + - "NS instances" + summary: Query information about multiple VNF Instances + description: Query information about multiple VNF Instances + operationId: getVnfInstances + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ArrayOfVnfInstanceInfo' + application/yaml: + schema: + $ref: '#/components/schemas/ArrayOfVnfInstanceInfo' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/vnf_instances/{vnfInstanceId}': + parameters: + - name: vnfInstanceId + in: path + required: true + description: VNF Instance ID + schema: + type: string + get: + tags: + - "NS instances" + summary: Query information about an individual VNF Instance + description: Query information about an individual VNF Instance + operationId: getVnfInstance + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/VnfInstanceInfo' + application/yaml: + schema: + $ref: '#/components/schemas/VnfInstanceInfo' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/subscriptions': + get: + tags: + - NS instances + summary: Query information about multiple NS instance subscription + description: Query information about multiple NS instance subscription + operationId: getNsSubcriptions + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ArrayOfNslcmSubscriptionInfo' + application/yaml: + schema: + $ref: '#/components/schemas/ArrayOfNslcmSubscriptionInfo' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + 5XX: + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + post: + tags: + - NS instances + summary: Create a new subscription for the Network service + description: Create a new subscription for the Network service + operationId: addNsSubcriptions + requestBody: + $ref: '#/components/requestBodies/NslcmSubscriptionRequest' + responses: + '201': + description: Created + headers: + Location: + schema: + type: object + content: + application/json: + schema: + $ref: '#/components/schemas/NslcmSubscriptionResponse' + application/yaml: + schema: + $ref: '#/components/schemas/NslcmSubscriptionResponse' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + 5XX: + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/nslcm/v1/subscriptions/{nsSubscriptionsId}': + parameters: + - name: nsSubscriptionsId + in: path + required: true + description: Network Service Subscription ID + schema: + type: string + get: + tags: + - NS instances + summary: Read information about an individual Network Service Subscription + description: Read information about an individual Network Service Subscription + operationId: getNsSubcriptionId + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/NslcmSubscriptionInfo' + application/yaml: + schema: + $ref: '#/components/schemas/NslcmSubscriptionInfo' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + 5XX: + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + delete: + tags: + - NS instances + summary: Delete an individual Network Service Subscription + description: Delete an individual Network Service Subscription + operationId: deleteNsSubcriptionId + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + 5XX: + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' +# END NS Instances + +# BEGIN Alarms + '/nsfm/v1/alarms': + get: + tags: + - "Alarms" + summary: Query information about multiple alarms + description: Query information about multiple alarms + operationId: getAlarms + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ArrayOfAlarm' + application/yaml: + schema: + $ref: '#/components/schemas/ArrayOfAlarm' '400': $ref: '#/components/responses/BadRequest' '401': @@ -1996,23 +2567,30 @@ paths: $ref: '#/components/responses/UnexpectedError' default: $ref: '#/components/responses/UnexpectedError' - '/nslcm/v1/vnf_instances': + '/nsfm/v1/alarms/{uuid}': + parameters: + - name: uuid + in: path + required: true + description: Alarm UUID + schema: + type: string get: tags: - - "NS instances" - summary: Query information about multiple VNF Instances - description: Query information about multiple VNF Instances - operationId: getVnfInstances + - "Alarms" + summary: Read an individual Alarm + description: Read an individual Alarm + operationId: getAlarm responses: '200': description: OK content: application/json: schema: - $ref: '#/components/schemas/ArrayOfVnfInstanceInfo' + $ref: '#/components/schemas/Alarm' application/yaml: schema: - $ref: '#/components/schemas/ArrayOfVnfInstanceInfo' + $ref: '#/components/schemas/Alarm' '400': $ref: '#/components/responses/BadRequest' '401': @@ -2037,30 +2615,17 @@ paths: $ref: '#/components/responses/UnexpectedError' default: $ref: '#/components/responses/UnexpectedError' - '/nslcm/v1/vnf_instances/{vnfInstanceId}': - parameters: - - name: vnfInstanceId - in: path - required: true - description: VNF Instance ID - schema: - type: string - get: + patch: tags: - - "NS instances" - summary: Query information about an individual VNF Instance - description: Query information about an individual VNF Instance - operationId: getVnfInstance + - "Alarms" + summary: Modify the data of an individual Alarm + description: Modify the data of an individual Alarm + operationId: updateAlarm + requestBody: + $ref: '#/components/requestBodies/AlarmInfoModifications' responses: - '200': - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/VnfInstanceInfo' - application/yaml: - schema: - $ref: '#/components/schemas/VnfInstanceInfo' + '204': + description: No Content '400': $ref: '#/components/responses/BadRequest' '401': @@ -2085,7 +2650,7 @@ paths: $ref: '#/components/responses/UnexpectedError' default: $ref: '#/components/responses/UnexpectedError' -# END NS Instances +# END Alarms # BEGIN NetSlice Templates '/nst/v1/netslice_templates': @@ -3640,10 +4205,14 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TokenInfo' + oneOf: + - $ref: '#/components/schemas/TokenInfo' + - $ref: '#/components/schemas/PasswordExpiryInfo' application/yaml: schema: - $ref: '#/components/schemas/TokenInfo' + oneOf: + - $ref: '#/components/schemas/TokenInfo' + - $ref: '#/components/schemas/PasswordExpiryInfo' '400': $ref: '#/components/responses/BadRequest' '401': @@ -5079,7 +5648,219 @@ paths: $ref: '#/components/schemas/ArrayOfSdnInfo' application/yaml: schema: - $ref: '#/components/schemas/ArrayOfSdnInfo' + $ref: '#/components/schemas/ArrayOfSdnInfo' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + post: + tags: + - "Infrastructure" + - "Admin" + summary: Create a new SDN + description: Create a new SDN + operationId: createSDN + requestBody: + $ref: '#/components/requestBodies/CreateSdnRequest' + responses: + '202': + description: Accepted + content: + application/json: + schema: + $ref: '#/components/schemas/ObjectId_plus_OpId' + application/yaml: + schema: + $ref: '#/components/schemas/ObjectId_plus_OpId' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/admin/v1/sdns/{sdnId}': + parameters: + - name: sdnId + in: path + required: true + description: SDN ID + schema: + type: string + format: uuid + get: + tags: + - "Infrastructure" + - "Admin" + summary: Query information about an individual SDN + description: Query information about an individual SDN + operationId: getSDN + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/SdnInfo' + application/yaml: + schema: + $ref: '#/components/schemas/SdnInfo' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + patch: + tags: + - "Infrastructure" + - "Admin" + summary: Modify a SDN + description: Modify a SDN + operationId: editSDN + requestBody: + $ref: '#/components/requestBodies/EditSdnRequest' + responses: + '202': + description: Accepted + content: + application/json: + schema: + $ref: '#/components/schemas/OpId' + application/yaml: + schema: + $ref: '#/components/schemas/OpId' + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + delete: + tags: + - "Infrastructure" + - "Admin" + summary: Delete a SDN + description: Delete a SDN + operationId: deleteSDN + responses: + '202': + description: Accepted + '400': + $ref: '#/components/responses/BadRequest' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + $ref: '#/components/responses/Forbidden' + '404': + $ref: '#/components/responses/NotFound' + '405': + $ref: '#/components/responses/MethodNotAllowed' + '406': + $ref: '#/components/responses/NotAcceptable' + '409': + $ref: '#/components/responses/Conflict' + '422': + $ref: '#/components/responses/UnprocessableEntity' + '500': + $ref: '#/components/responses/InternalServerError' + '503': + $ref: '#/components/responses/ServiceUnavailable' + '5XX': + $ref: '#/components/responses/UnexpectedError' + default: + $ref: '#/components/responses/UnexpectedError' + '/admin/v1/k8sclusters': + get: + tags: + - "Infrastructure" + - "Admin" + summary: Query information about multiple K8s Clusters + description: Query information about multiple K8s Clusters + operationId: getK8sClusters + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ArrayOfK8sClusterInfo' + application/yaml: + schema: + $ref: '#/components/schemas/ArrayOfK8sClusterInfo' '400': $ref: '#/components/responses/BadRequest' '401': @@ -5108,11 +5889,11 @@ paths: tags: - "Infrastructure" - "Admin" - summary: Create a new SDN - description: Create a new SDN - operationId: createSDN + summary: Create a new K8s Cluster + description: Create a new K8s Cluster + operationId: createK8sCluster requestBody: - $ref: '#/components/requestBodies/CreateSdnRequest' + $ref: '#/components/requestBodies/CreateK8sClusterRequest' responses: '202': description: Accepted @@ -5147,12 +5928,12 @@ paths: $ref: '#/components/responses/UnexpectedError' default: $ref: '#/components/responses/UnexpectedError' - '/admin/v1/sdns/{sdnId}': + '/admin/v1/k8sclusters/{k8sClusterId}': parameters: - - name: sdnId + - name: k8sClusterId in: path required: true - description: SDN ID + description: K8s Cluster ID schema: type: string format: uuid @@ -5160,19 +5941,19 @@ paths: tags: - "Infrastructure" - "Admin" - summary: Query information about an individual SDN - description: Query information about an individual SDN - operationId: getSDN + summary: Query information about an individual K8s Cluster + description: Query information about an individual K8s Cluster + operationId: getK8sCluster responses: '200': description: OK content: application/json: schema: - $ref: '#/components/schemas/SdnInfo' + $ref: '#/components/schemas/K8sClusterInfo' application/yaml: schema: - $ref: '#/components/schemas/SdnInfo' + $ref: '#/components/schemas/K8sClusterInfo' '400': $ref: '#/components/responses/BadRequest' '401': @@ -5201,11 +5982,11 @@ paths: tags: - "Infrastructure" - "Admin" - summary: Modify a SDN - description: Modify a SDN - operationId: editSDN + summary: Modify a K8s Cluster + description: Modify a K8s Cluster + operationId: editK8sCluster requestBody: - $ref: '#/components/requestBodies/EditSdnRequest' + $ref: '#/components/requestBodies/EditK8sClusterRequest' responses: '202': description: Accepted @@ -5244,9 +6025,9 @@ paths: tags: - "Infrastructure" - "Admin" - summary: Delete a SDN - description: Delete a SDN - operationId: deleteSDN + summary: Delete a K8s Cluster + description: Delete a K8s Cluster + operationId: deleteK8sCluster responses: '202': description: Accepted @@ -5274,24 +6055,24 @@ paths: $ref: '#/components/responses/UnexpectedError' default: $ref: '#/components/responses/UnexpectedError' - '/admin/v1/k8sclusters': + '/admin/v1/vca': get: tags: - "Infrastructure" - "Admin" - summary: Query information about multiple K8s Clusters - description: Query information about multiple K8s Clusters - operationId: getK8sClusters + summary: Query information about multiple VCAs + description: Query information about multiple VCAs + operationId: getVcas responses: '200': description: OK content: application/json: schema: - $ref: '#/components/schemas/ArrayOfK8sClusterInfo' + $ref: '#/components/schemas/ArrayOfVcaInfo' application/yaml: schema: - $ref: '#/components/schemas/ArrayOfK8sClusterInfo' + $ref: '#/components/schemas/ArrayOfVcaInfo' '400': $ref: '#/components/responses/BadRequest' '401': @@ -5320,11 +6101,11 @@ paths: tags: - "Infrastructure" - "Admin" - summary: Create a new K8s Cluster - description: Create a new K8s Cluster - operationId: createK8sCluster + summary: Create a new VCA + description: Create a new VCA + operationId: createVca requestBody: - $ref: '#/components/requestBodies/CreateK8sClusterRequest' + $ref: '#/components/requestBodies/CreateVcaRequest' responses: '202': description: Accepted @@ -5359,12 +6140,12 @@ paths: $ref: '#/components/responses/UnexpectedError' default: $ref: '#/components/responses/UnexpectedError' - '/admin/v1/k8sclusters/{k8sClusterId}': + '/admin/v1/vca/{vcaId}': parameters: - - name: k8sClusterId + - name: vcaId in: path required: true - description: K8s Cluster ID + description: VCA ID schema: type: string format: uuid @@ -5372,19 +6153,19 @@ paths: tags: - "Infrastructure" - "Admin" - summary: Query information about an individual K8s Cluster - description: Query information about an individual K8s Cluster - operationId: getK8sCluster + summary: Query information about an individual VCA + description: Query information about an individual VCA + operationId: getVca responses: '200': description: OK content: application/json: schema: - $ref: '#/components/schemas/K8sClusterInfo' + $ref: '#/components/schemas/VcaInfo' application/yaml: schema: - $ref: '#/components/schemas/K8sClusterInfo' + $ref: '#/components/schemas/VcaInfo' '400': $ref: '#/components/responses/BadRequest' '401': @@ -5413,11 +6194,11 @@ paths: tags: - "Infrastructure" - "Admin" - summary: Modify a K8s Cluster - description: Modify a K8s Cluster - operationId: editK8sCluster + summary: Modify a VCA + description: Modify a VCA + operationId: editVca requestBody: - $ref: '#/components/requestBodies/EditK8sClusterRequest' + $ref: '#/components/requestBodies/EditVcaRequest' responses: '202': description: Accepted @@ -5456,9 +6237,9 @@ paths: tags: - "Infrastructure" - "Admin" - summary: Delete a K8s Cluster - description: Delete a K8s Cluster - operationId: deleteK8sCluster + summary: Delete a VCA + description: Delete a VCA + operationId: deleteVca responses: '202': description: Accepted @@ -5765,6 +6546,15 @@ components: application/zip: schema: $ref: '#/components/schemas/NetSlicePackage' + NslcmSubscriptionResponse: + description: NslcmSubscriptionResponse + content: + application/json: + schema: + $ref: '#/components/schemas/NslcmSubscriptionResponse' + application/yaml: + schema: + $ref: '#/components/schemas/NslcmSubscriptionResponse' # END RESPONSES schemas: @@ -5805,6 +6595,20 @@ components: description: description: NSD Description type: string + AlarmInfoModifications: + description: | + Alarm Information + type: object + properties: + id: + description: UUID + type: string + is_enable: + description: To enable/disable the alarm. + type: string + threshold: + description: Threshold value of the Alarm + type: string NsdInfo: description: | NS Descriptor Information @@ -5983,7 +6787,7 @@ components: additionalParamsForNs: type: object additionalProperties: true - additionalParamsForVnf: + additionalParamsForVnf: &additionalparamsforvnf type: array items: type: object @@ -5993,6 +6797,11 @@ components: additionalParams: type: object additionalProperties: true + k8s-namespace: + type: string + description: | + use this namespace for all the KDU deployed in this VNF + (if any). By default it is used the id of the project additionalParamsForVdu: type: array items: @@ -6014,12 +6823,17 @@ components: properties: kdu_name: type: string + k8s-namespace: + type: string + description: use this namespace for this KDU + kdu_model: + type: string additionalParams: type: object additionalProperties: true required: - kdu_name - - additionalParams + minProperties: 2 additionalProperties: false required: - member-vnf-index @@ -6034,6 +6848,18 @@ components: format: uuid vduImage: type: string + placement-engine: + type: string + description: | + To compute automatically the target VIM for each VNF based on + constrains, e.g. latency. Currently only 'PLA' is supported + placement-constraints: + type: object + additionalProperties: true + k8s-namespace: + type: string + timeout_ns_deploy: + type: integer vnf: type: array items: @@ -6149,6 +6975,30 @@ components: type: string segmentation-id: type: string + network-type: + type: string + sdn-ports: + description: | + connect additional ports to the created underlay SDN connectivity. + Normally for external connectivy. + type: array + items: + type: object + properties: + switch_id: + type: string + switch_port: + type: string + mac_address: + type: string + format: mac_address + vlan: + type: integer + additionalProperties: true + required: + - switch_id + - switch_port + minItems: 1 additionalProperties: false internal-connection-point: type: array @@ -6243,6 +7093,9 @@ components: type: string enum: - SCALE_VNF + timeout_ns_scale: + description: timeout for the scale operation + type: integer scaleVnfData: type: object properties: @@ -6256,21 +7109,130 @@ components: properties: scaling-group-descriptor: type: string + scaling-policy: + type: string member-vnf-index: type: string - additionalProperties: true - additionalProperties: true - additionalProperties: true - TerminateNsRequest: + required: + - scaling-group-descriptor + - member-vnf-index + additionalProperties: false + required: + - scaleVnfType + - scaleByStepData + additionalProperties: false + required: + - scaleType + - scaleVnfData + additionalProperties: false + HealNsRequest: + description: > + This type represents request parameters for the "Heal NS" operation. This operation supports the healing of an NS + instance by healing one or more of the VNF that are part of this NS. type: object properties: - terminationTime: - description: | - Timestamp indicating the end time of the NS, i.e. the NS will be terminated - automatically at this timestamp. Cardinality "0" indicates the NS termination - takes place immediately. + timeout_ns_heal: + description: timeout for the heal operation in seconds + type: integer + healVnfData: + description: > + List of VNF to be healed, together with the information needed to heal each. + type: array + items: + $ref: "#/components/schemas/HealVnfData" + required: + - healVnfData + HealVnfData: + description: > + This type represents the information to heal a VNF that is part of an NS. + type: object + required: + - vnfInstanceId + properties: + vnfInstanceId: + description: > + Identifies the VNF instance, part of the NS, requiring a + healing action. type: string - format: date-time + format: uuid + cause: + description: > + Indicates the reason why a healing procedure is required. + type: string + additionalParams: + description: > + Additional parameters passed by the NFVO as input to + the healing process, specific to the VNF being healed. + type: object + properties: + run-day1: + description: > + Flag to indicate whether or not to run day1 primitives for the VNF (default: false). + type: boolean + default: false + vdu: + description: > + List of VDU to be healed, together with the information needed to heal each. + type: array + items: + $ref: "#/components/schemas/HealVduData" + HealVduData: + description: > + This type represents the information to heal a VDU that is part of a VNF. + type: object + required: + - vdu-id + properties: + vdu-id: + description: > + Identifies the VDU id, part of the VNF, requiring a healing action. + type: string + format: uuid + count-index: + description: > + Indicates the VDU number when the VDU is part of a scale-group. + type: integer + minimum: 0 + run-day1: + description: > + Flag to indicate whether or not to run day1 primitives for the VDU (default: false). + type: boolean + default: false + NSinstanceMigrateRequest: + description: > + This type represents request parameters for the "Migrate" operation. This operation supports the migration of an NS + instance by migrating one or more of the VDUs that are part of this NS. + type: object + properties: + vnfInstanceId: + type: string + migrateToHost: + type: string + vdu: + type: object + properties: + vduId: + type: string + vduCountIndex: + type: integer + required: + - vduId + required: + - vnfInstanceId + additionalProperties: false + TerminateNsRequest: + type: object + properties: + timeout_ns_terminate: + description: timeout for terminate operation + type: integer + autoremove: + description: remove network service if termination end without error + type: boolean + skip_terminate_primitives: + description: Do not execute network service termination primitives + type: boolean + additionalProperties: false ArrayOfNsInstance: type: array items: @@ -6280,23 +7242,127 @@ components: properties: primitive: type: string + description: | + name of the primitive in the 'config-descriptor'. If the target is + a kdu it can be also 'status', 'rollback' or 'upgrade' primitive_params: + description: parameters of this primitive $ref: '#/components/schemas/KeyValuePairs' - lcmOperationType: - type: string - nsInstanceId: - type: string - format: uuid member_vnf_index: type: string + description: provide if the target action is for a vnf, vdu or kdu vdu_id: type: string + description: provide if the target action is for a vdu + kdu_name: + type: string + description: provide if the target action is for a kdu vdu_count_index: type: integer + timeout_ns_action: + description: timeout for the day 1/2 operation + type: integer required: - primitive - primitive_params additionalProperties: false + UpdateNsRequest: + description: > + This type represents request parameters for the "Update NS" operation. This operation supports the update of an NS + instance by updating one or more of the VNFs that are part of this NS. + type: object + properties: + updateType: + type: string + enum: + - CHANGE_VNFPKG + - REMOVE_VNF + - MODIFY_VNF_INFORMATION + - OPERATE_VNF + changeVnfPackageData: + type: object + properties: + vnfInstanceId: + type: string + vnfdId: + type: string + required: + - vnfInstanceId + - vnfdId + removeVnfInstanceId: + type: string + modifyVnfInfoData: + type: object + properties: + vnfInstanceId: + type: string + vnfdId: + type: string + required: + - vnfInstanceId + - vnfdId + operateVnfData: + type: object + properties: + vnfInstanceId: + type: string + changeStateTo: + type: string + additionalParam: + type: object + properties: + run-day1: + type: boolean + vdu_id: + type: string + count-index: + type: number + required: + - vdu_id + - count-index + required: + - vnfInstanceId + - changeStateTo + additionalProperties: false + required: + - updateType + additionalProperties: false + VerticalscaleNsRequest: + description: > + This type represents request parameters for the "Vertical Scale NS" operation. + This operation supports the vertical scale of an NS instance by verticalscaling + one or more of the VNFs that are part of this NS. + type: object + properties: + verticalScale: + type: string + changeVnfFlavorData: + type: object + properties: + vnfInstanceId: + type: string + format: uuid + additionalParams: + type: object + properties: + vduid: + type: string + format: uuid + vduCountIndex: + type: integer + virtualMemory: + type: integer + sizeOfStorage: + type: integer + numVirtualCpu: + type: integer + required: + - vnfInstanceId + - additionalParams + additionalProperties: false + required: + - verticalScale + additionalProperties: false # CreateNSinstanceContentRequest: # Substituted by InstantiateNsRequest CreateNSinstanceContentResponse: @@ -6459,6 +7525,45 @@ components: type: array items: $ref: '#/components/schemas/NetSliceInstance' + Alarm: + description: | + Alarm Information + type: object + properties: + _id: + description: Identifier of the Alarm. + type: string + format: uuid + id: + description: Identifier of the Alarm. + type: string + format: uuid + metric: + description: Alarm metric. + type: string + threshold: + description: Threshold value of the Alarm. + type: number + format: float + operation: + description: Operation to be applied. + type: string + action: + description: Action to be taken. + type: string + status: + description: Current status of the alarm. + type: string + required: + - _id + - id + - metric + - threshold + - operation + ArrayOfAlarm: + type: array + items: + $ref: '#/components/schemas/Alarm' # CreateNsiRequest: # Substituted by InstantiateNsiRequest InstantiateNsiRequest: @@ -6528,48 +7633,7 @@ components: additionalParamsForNs: type: object additionalProperties: true - additionalParamsForVnf: - type: array - items: - type: object - properties: - member-vnf-index: - type: string - additionalParams: - type: object - additionalProperties: true - additionalParamsForVdu: - type: array - items: - type: object - properties: - vdu_id: - type: string - additionalParams: - type: object - additionalProperties: true - required: - - vdu_id - - additionalParams - additionalProperties: false - additionalParamsForKdu: - type: array - items: - type: object - properties: - kdu_name: - type: string - additionalParams: - type: object - additionalProperties: true - required: - - kdu_name - - additionalParams - additionalProperties: false - required: - - member-vnf-index - minProperties: 2 - additionalProperties: false + additionalParamsForVnf: *additionalparamsforvnf ssh_keys: type: array items: @@ -6912,6 +7976,8 @@ components: type: string admin: type: boolean + admin_show: + type: boolean project_id: type: string format: uuid @@ -6925,6 +7991,13 @@ components: issued_at: type: number format: float + user_show: + type: boolean + last_login: + type: number + format: float + login_count: + type: number expires: type: number format: float @@ -6943,6 +8016,16 @@ components: format: uuid name: type: string + PasswordExpiryInfo: + type: object + properties: + id: + type: string + message: + type: string + user_id: + type: string + format: uuid ArrayOfTokenInfo: type: array items: @@ -7052,6 +8135,15 @@ components: type: string password: type: string + old_password: + type: string + system_admin_id: + type: string + format: uuid + unlock: + type: boolean + renew: + type: boolean projects: oneOf: - $ref: '#/components/schemas/ShortNameList' @@ -7073,19 +8165,19 @@ components: type: integer minimum: 0 nullable: false - nsts: + slice_templates: type: integer minimum: 0 nullable: false - pdus: + pduds: type: integer minimum: 0 nullable: false - nsrs: + ns_instances: type: integer minimum: 0 nullable: false - nsis: + slice_instances: type: integer minimum: 0 nullable: false @@ -7097,7 +8189,23 @@ components: type: integer minimum: 0 nullable: false - sdns: + sdn_controllers: + type: integer + minimum: 0 + nullable: false + k8sclusters: + type: integer + minimum: 0 + nullable: false + vca: + type: integer + minimum: 0 + nullable: false + k8srepos: + type: integer + minimum: 0 + nullable: false + osmrepos: type: integer minimum: 0 nullable: false @@ -7113,19 +8221,19 @@ components: type: integer minimum: 0 nullable: true - nsts: + slice_templates: type: integer minimum: 0 nullable: true - pdus: + pduds: type: integer minimum: 0 nullable: true - nsrs: + ns_instances: type: integer minimum: 0 nullable: true - nsis: + slice_instances: type: integer minimum: 0 nullable: true @@ -7137,7 +8245,23 @@ components: type: integer minimum: 0 nullable: true - sdns: + sdn_controllers: + type: integer + minimum: 0 + nullable: true + k8sclusters: + type: integer + minimum: 0 + nullable: true + vca: + type: integer + minimum: 0 + nullable: true + k8srepos: + type: integer + minimum: 0 + nullable: true + osmrepos: type: integer minimum: 0 nullable: true @@ -7266,9 +8390,14 @@ components: type: string vim_password: type: string + vca: + type: string + format: uuid config: type: object additionalProperties: true + resources: + type: object ArrayOfVimInfo: type: array items: @@ -7300,9 +8429,17 @@ components: type: string vim_password: type: string + vca: + type: string + format: uuid config: type: object additionalProperties: true + prometheus-config: + type: object + additionalProperties: true + resources: + type: object required: - name - vim_url @@ -7333,6 +8470,12 @@ components: type: string vim_password: type: string + vca: + type: string + format: uuid + prometheus-config: + type: object + additionalProperties: true config: type: object additionalProperties: true @@ -7640,7 +8783,16 @@ components: type: array items: type: object - additionalProperties: true + additionalProperties: false + K8sClusterDeploymentMethods: + type: object + properties: + juju-bundle: + type: boolean + helm-chart-v3: + type: boolean + additionalProperties: false + minProperties: 3 K8sClusterInfo: type: object properties: @@ -7666,6 +8818,8 @@ components: type: string nets: $ref: '#/components/schemas/K8sClusterNetList' + deployment_methods: + $ref: '#/components/schemas/K8sClusterDeploymentMethods' namespace: type: string cni: @@ -7735,6 +8889,113 @@ components: items: type: string additionalProperties: false + VcaInfo: + type: object + properties: + _id: + type: string + format: uuid + schema_version: + type: string + format: X.Y[.Z] + schema_type: + type: string + name: + type: string + description: + type: string + endpoints: + type: string + user: + type: string + secret: + type: string + cacert: + type: string + lxd-cloud: + type: string + lxd-credentials: + type: string + k8s-cloud: + type: string + k8s-credentials: + type: string + model-config: + type: object + additionalProperties: true + ArrayOfVcaInfo: + type: array + items: + $ref: '#/components/schemas/VcaInfo' + CreateVcaRequest: + type: object + properties: + schema_version: + type: string + format: X.Y[.Z] + schema_type: + type: string + name: + type: string + description: + type: string + endpoints: + type: string + user: + type: string + secret: + type: string + cacert: + type: string + lxd-cloud: + type: string + lxd-credentials: + type: string + k8s-cloud: + type: string + k8s-credentials: + type: string + model-config: + type: object + additionalProperties: true + required: + - name + - endpoints + - user + - secret + - cacert + - lxd-cloud + - lxd-credentials + - k8s-cloud + - k8s-credentials + additionalProperties: false + EditVcaRequest: + type: object + properties: + name: + type: string + description: + type: string + endpoints: + type: string + user: + type: string + secret: + type: string + cacert: + type: string + lxd-cloud: + type: string + lxd-credentials: + type: string + k8s-cloud: + type: string + k8s-credentials: + type: string + model-config: + type: object + additionalProperties: true + additionalProperties: false K8sRepoType: type: string enum: @@ -7755,6 +9016,34 @@ components: url: type: string format: uri + username: + type: string + description: repository username + password: + type: string + description: repository password + ca-file: + type: string + description: verify certificates of HTTPS-enabled servers using this CA bundle + cert-file: + type: string + description: identify HTTPS client using this SSL certificate file + skip-tls-verify: + type: boolean + description: skip tls certificate checks for the repository + key-file: + type: string + description: identify HTTPS client using this SSL key file + oci: + type: boolean + default: false + description: > + Flag to indicate whether or not it is an OCI-enabled repo (default: false) + required: + - name + - type + - url + additionalProperties: false ArrayOfK8sRepoInfo: type: array items: @@ -7776,6 +9065,180 @@ components: - type - url additionalProperties: false + NslcmSubscriptionResponse: + type: object + properties: + id: + type: string + format: uuid + filter: + type: object + CallbackUri: + type: string + format: uri + _links: + type: object + NslcmSubscriptionInfo: + type: object + properties: + _id: + type: string + format: uuid + _admin: + type: object + schema_version: + type: string + format: 'X.Y[.Z]' + CallbackUri: + type: string + format: uri + filter: + type: object + authentication: + $ref: '#/components/schemas/Authenticationschema' + ArrayOfNslcmSubscriptionInfo: + type: array + items: + $ref: '#/components/schemas/NslcmSubscriptionInfo' + NsInstanceSubscriptionFilter: + description: | + used to identify the network service + type: object + oneOf: + - $ref: '#/components/schemas/nsdIds' + - $ref: '#/components/schemas/vnfdIds' + - $ref: '#/components/schemas/pnfdIds' + - $ref: '#/components/schemas/nsInstanceIds' + - $ref: '#/components/schemas/nsInstanceNames' + nsdIds: + type: array + items: + type: string + vnfdIds: + type: array + items: + type: string + pnfdIds: + type: array + items: + type: string + nsInstanceIds: + type: array + items: + type: string + nsInstanceNames: + type: array + items: + type: string + Nslcmsubschema: + type: object + properties: + nsInstanceSubscriptionFilter: + $ref: '#/components/schemas/NsInstanceSubscriptionFilter' + notificationTypes: + description: | + If NsLcmOperationOccurrenceNotification is selected then at least operationTypes or states is required. If NsLcmOperationOccurrenceNotification is selected then at least nsComponentTypes, lcmOpName and lcmOpOccStatus is required + type: array + items: + type: string + enum: + - NsIdentifierCreationNotification + - NsIdentifierDeletionNotification + - NsLcmOperationOccurrenceNotification + - NsChangeNotification + operationTypes: + type: array + items: + type: string + enum: + - INSTANTIATE + - SCALE + - TERMINATE + - UPDATE + - HEAL + operationStates: + type: array + items: + type: string + enum: + - PROCESSING + - COMPLETED + - PARTIALLY_COMPLETED + - FAILED + - FAILED_TEMP + - ROLLING_BACK + - ROLLED_BACK + nsComponentTypes: + type: array + items: + type: string + enum: + - VNF + - NS + - PNF + lcmOpNameImpactingNsComponent: + type: array + items: + type: string + enum: + - VNF_INSTANTIATE + - VNF_SCALE + - VNF_SCALE_TO_LEVEL + - VNF_CHANGE_FLAVOUR + - VNF_TERMINATE + - VNF_HEAL + - VNF_OPERATE + - VNF_CHANGE_EXT_CONN + - VNF_MODIFY_INFO + - NS_INSTANTIATE + - NS_SCALE + - NS_UPDATE + - NS_TERMINATE + - NS_HEAL + lcmOpOccStatusImpactingNsComponent: + type: array + items: + type: string + enum: + - START + - COMPLETED + - PARTIALLY_COMPLETED + - FAILED + - ROLLED_BACK + Authenticationschema: + type: object + properties: + authType: + type: string + enum: + - basic + paramsBasic: + type: object + properties: + userName: + type: string + password: + type: string + NslcmSubscriptionRequest: + type: object + properties: + filter: + $ref: '#/components/schemas/Nslcmsubschema' + CallbackUri: + type: string + format: uri + authentication: + $ref: '#/components/schemas/Authenticationschema' + required: + - CallbackUri + CancelNSLCMOpOccRequest: + type: object + properties: + cancelMode: + type: string + enum: + - GRACEFUL + - FORCEFUL # END SCHEMAS requestBodies: @@ -7795,6 +9258,14 @@ components: application/yaml: schema: $ref: '#/components/schemas/NsdInfoModifications' + AlarmInfoModifications: + content: + application/json: + schema: + $ref: '#/components/schemas/AlarmInfoModifications' + application/yaml: + schema: + $ref: '#/components/schemas/AlarmInfoModifications' NsDescriptor: content: text/plain: @@ -7841,6 +9312,22 @@ components: application/yaml: schema: $ref: '#/components/schemas/InstantiateNsRequest' + HealNsRequest: + content: + application/json: + schema: + $ref: '#/components/schemas/HealNsRequest' + application/yaml: + schema: + $ref: '#/components/schemas/HealNsRequest' + NSinstanceMigrateRequest: + content: + application/json: + schema: + $ref: '#/components/schemas/NSinstanceMigrateRequest' + application/yaml: + schema: + $ref: '#/components/schemas/NSinstanceMigrateRequest' ScaleNsRequest: content: application/json: @@ -7857,6 +9344,22 @@ components: application/yaml: schema: $ref: '#/components/schemas/TerminateNsRequest' + UpdateNsRequest: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateNsRequest' + application/yaml: + schema: + $ref: '#/components/schemas/UpdateNsRequest' + VerticalscaleNsRequest: + content: + application/json: + schema: + $ref: '#/components/schemas/VerticalscaleNsRequest' + application/yaml: + schema: + $ref: '#/components/schemas/VerticalscaleNsRequest' # CreateNSinstanceContentRequest: # Substituted by InstantiateNsRequest CreateNstInfoRequest: @@ -8049,6 +9552,22 @@ components: application/yaml: schema: $ref: '#/components/schemas/EditK8sClusterRequest' + CreateVcaRequest: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateVcaRequest' + application/yaml: + schema: + $ref: '#/components/schemas/CreateVcaRequest' + EditVcaRequest: + content: + application/json: + schema: + $ref: '#/components/schemas/EditVcaRequest' + application/yaml: + schema: + $ref: '#/components/schemas/EditVcaRequest' CreateK8sRepoRequest: content: application/json: @@ -8057,6 +9576,22 @@ components: application/yaml: schema: $ref: '#/components/schemas/CreateK8sRepoRequest' + NslcmSubscriptionRequest: + content: + application/json: + schema: + $ref: '#/components/schemas/NslcmSubscriptionRequest' + application/yaml: + schema: + $ref: '#/components/schemas/NslcmSubscriptionRequest' + CancelNSLCMOpOccRequest: + content: + application/json: + schema: + $ref: '#/components/schemas/CancelNSLCMOpOccRequest' + application/yaml: + schema: + $ref: '#/components/schemas/CancelNSLCMOpOccRequest' # END REQUEST BODIES securitySchemes: