Loading docker/Dockerfile +4 −4 Viewed Changes for docker/Dockerfile: 4 added lines, 4 removed lines. Original line number Diff line number Diff line # Copyright ETSI 2017 # See: https://forge.etsi.org/etsi-forge-copyright-statement.txt FROM alpine:3.6 FROM alpine:3.10.0 RUN env RUN apk update Loading @@ -16,9 +16,9 @@ RUN gem install rdoc --pre || gem install rdoc --pre RUN gem install asciidoctor-pdf-cjk RUN wget https://forge.etsi.org/swagger2markup-cli-1.3.2.jar RUN npm config set proxy $http_proxy RUN npm install -g swagger-tools@0.10.3 RUN npm install -g json-refs@3.0.2 RUN npm install -g yamljs@0.3.0 RUN npm install -g swagger-cli RUN npm install -g json-refs RUN npm install -g yamljs ADD validate-in-docker.sh /validate-in-docker.sh RUN chmod +x /validate-in-docker.sh Loading docker/validate-in-docker.sh +1 −1 Viewed Changes for docker/validate-in-docker.sh: 1 added line, 1 removed line. Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ function validate_api () { mv "${deliverable}-${api}-API.pdf" "../build/" echo "--- Validating ${merged_file}" swagger-tools validate "${merged_file}" swagger-cli validate "${merged_file}" vres=$? echo "--- Validation done ($vres)." Loading src/SOL005/APIVersion/APIVersion.yaml +26 −37 Viewed Changes for src/SOL005/APIVersion/APIVersion.yaml: 26 added lines, 37 removed lines. Original line number Diff line number Diff line swagger: "2.0" openapi: 3.0.2 info: version: "1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" title: "SOL005 - API version interface" description: > SOL005 - API version Interface IMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to and has not been approved by the ETSI NFV ISG. In case of discrepancies the published ETSI Group Specification takes precedence. Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis title: SOL005 - API version interface description: | SOL005 - API version Interface IMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to and has not been approved by the ETSI NFV ISG. In case of discrepancies the published ETSI Group Specification takes precedence. Please report bugs to Please report bugs to https://forge.etsi.org/rep/nfv/SOL005/issues contact: name: NFV-SOL WG license: name: "ETSI Forge copyright notice" name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt contact: name: "NFV-SOL WG" version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: description: ETSI GS NFV-SOL 005 V2.7.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.07.01_60/gs_NFV-SOL005v020701p.pdf schemes: - http - https consumes: - application/json description: ETSI GS NFV-SOL 005 V3.3.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.03.01_60/gs_nfv-sol005v030301p.pdf produces: - application/json servers: - url: http://127.0.0.1/ - url: https://127.0.0.1/ paths: ############################################################################### # API Versions # ############################################################################### '/nsd/api_versions': $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' /nsd/api_versions: $ref: ../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions '/nsfm/api_versions': $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' /nsfm/api_versions: $ref: ../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions '/nslcm/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' /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 /vnfpkgm/api_versions: $ref: ../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions No newline at end of file src/SOL005/NFVICapacityInformation/definitions/NFVICapacityInformation_def.yaml 0 → 100644 +457 −0 Viewed Changes for src/SOL005/NFVICapacityInformation/definitions/NFVICapacityInformation_def.yaml: 457 added lines, 0 removed lines. Original line number Diff line number Diff line components: schemas: NfviCapacityInfo: type: object description: | This type defines the format of the NFVI capacity information. The type shall comply with the provisions defined in Table 10.5.2.4-1. required: - id - vimId - capacityInfoPerZone properties: id: description: | Identifier of this NFVI capacity information. Its value shall be the same as vimId. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier vimId: description: | Identifies the VIM to which the NFVI capacity information is associated. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier capacityInfoPerZone: description: | Capacity information on a per resource zone basis under control by the associated VIM. type: array items: $ref: '#/components/schemas/NfviCapacityInfoPerZone' totalCapacityInfo: description: | Total capacity information associated to the VIM. $ref: '#/components/schemas/NfviCapacityMeasurement' timeInterval: description: | Time interval of the NFVI capacity information. $ref: '#/components/schemas/TimeInterval' CapacityThreshold: type: object description: | This type represents a capacity threshold. It shall comply with the provisions defined in table 10.5.2.8-1. required: - id - objectInstanceId - criteria - callbackUri - _links properties: id: description: | Identifier of this capacity threshold resource. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier objectInstanceId: description: | Identifier of the VIM instance associated with the capacity threshold. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier subObjectInstanceIds: description: | Identifiers of the sub-object instances of the measured object instance associate with this capacity threshold. If this attribute is absent, measurements are taken for all sub-object instances of the measured object instance. type: array items: $ref: ../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim criteria: description: | Criteria that define this capacity threshold. $ref: '#/components/schemas/CapacityThresholdCriteria' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri _links: type: object description: | Links for this resource. required: - self properties: self: description: | URI of this resource. $ref: ../../definitions/SOL005_def.yaml#/definitions/Link object: description: | Link to a resource representing the VIM’s NFVI capacity information. Shall be present if the VIM’s NFVI capacity information is accessible as a resource. $ref: ../../definitions/SOL005_def.yaml#/definitions/Link CreateCapacityThresholdRequest: type: object description: | This type represents a request to create a capacity threshold. It shall comply with the provisions defined in table 10.5.2.3-1. required: - objectInstanceId - criteria properties: objectInstanceId: description: | Identifier of the VIM instance associated with this capacity threshold. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier subObjectInstanceIds: description: | Identifiers of the sub-object instances of the measured object instance associate with this capacity threshold. If this attribute is absent, measurements will be taken for all sub-object instances of the measured object instance. type: array items: $ref: ../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim criteria: description: | Criteria that define this capacity threshold. $ref: '#/components/schemas/CapacityThresholdCriteria' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri authentication: description: | Authentication parameters to configure the use of Authorization when sending notifications corresponding to this capacity threshold, as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. This attribute shall only be present if the API consumer requires authorization of notifications. $ref: ../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication NfviCapacityInfoSubscription: type: object description: | This type represents a subscription. It shall comply with the provisions defined in Table 10.5.2.9-1. required: - id - callbackUri - _links properties: id: description: | Identifier that identifies the subscription. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier filter: description: | Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter. $ref: '#/components/schemas/NfviCapacityInfoNotificationsFilter' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri _links: type: object description: | Links to resources related to this resource. required: - self properties: self: description: | URI of this resource. $ref: ../../definitions/SOL005_def.yaml#/definitions/Link NfviCapacityInfoSubscriptionRequest: type: object description: | This type represents a subscription request. It shall comply with the provisions defined in Table 10.5.2.2-1. required: - callbackUri properties: filter: description: | Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter. $ref: '#/components/schemas/NfviCapacityInfoNotificationsFilter' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri authentication: description: | Authentication parameters to configure the use of authorization when sending notifications corresponding to this subscription, as defined in clause 8.3.4 of ETSI GS NFV SOL 013. This attribute shall only be present if the subscriber requires authorization of notifications. $ref: ../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication CapacityShortageNotification: type: object description: | This notification informs the receiver that the available NFVI capacity has crossed below a threshold value or has re-covered from a capacity shortage. It shall comply with the provisions defined in Table 10.5.2.10-1. required: - id - notificationType - thresholdId - timeStamp - direction - capacityInformation - objectInstanceId 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 "CapacityShortageNotification" for this notification type. type: string thresholdId: description: | Identifier of the threshold which has been crossed $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: | Identifies the VIM’s NFVI capacity information instance (measured object instance) in which the available NFVI capacity has crossed a threshold value. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier subObjectInstanceId: description: | Identifier of the sub-object of the measured object to which the measurement applies. Refer to the definition of the "CapacityThreshold" in clause 10.5.2.7. $ref: ../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim direction: description: | Specifies if the threshold has been crossed in UP or DOWN direction. type: string enum: - UP - DOWN capacityInformation: description: | Information about the available, reserved, allocated/used, and total capacity of the NFVI. If the threshold creation process does specify a resource zone and/or vimId, the information is provided for the resource zone/vimId where the NFVI capacity has crossed the thresholdas indicated by the "subObjectInstanceId" and "objectInstanceId" attributes. $ref: "#/components/schemas/NfviCapacityMeasurement" _links: description: | Links to resources related to this notification. type: object required: - threshold properties: objectInstance: description: | Link to the resource representing the measured object instance to which the notified change applies. Shall be present if the measured object 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 NfviCapacityInfoNotificationsFilter: type: object description: | This type represents a filter that can be used to subscribe for notifications related to NFVI capacity information events. It shall comply with the provisions defined in Table 10.5.3.2-1. properties: notificationTypes: description: | Match particular notification types. Permitted values: - CapacityShortageNotification type: array items: type: string enum: - CapacityShortageNotification CapacityThresholdCriteria: type: object description: | This type represents criteria that define a capacity threshold. It shall comply with the provisions defined in table 10.5.3.3-1. required: - capacityMetric - thresholdType properties: capacityMetric: description: | Defines the capacity metric for which the threshold applies. type: object required: - resourceType - capacityMeasurementName - capacityType properties: resourceType: description: | Type of resource. $ref: '#/components/schemas/NfviCapacityResourceTypeEnumeration' capacityMeasurementName: description: | Name of the capacity measurement. Different resource types can have different associated capacity measurements, typically associated to different sub-types of the resource type. type: string capacityType: description: | The type of capacity for the threshold. Permitted values: - TOTAL: for total capacity. - ALLOCATED: for allocated/used capacity. - RESERVED: for reserved capacity. - AVAILABLE: for available capacity. type: string enum: - TOTAL - ALLOCATED - RESERVED - AVAILABLE thresholdType: description: | Type of capacity threshold. This attribute determines which other attributes are present in the data structure. Permitted values: - SIMPLE: Single-valued static threshold. In the present document, simple thresholds are defined. The definition of additional threshold types is left for future specification. type: string enum: - SIMPLE simpleThresholdDetails: description: | Details of a simple threshold. Shall be present if thresholdType="SIMPLE". type: array items: type: object required: - thresholdValue - hysteresis properties: thresholdValue: description: | The threshold value. Shall be represented as a floating point number. type: number hysteresis: description: | The hysteresis of the threshold. Shall be represented as a non-negative floating point number. A notification with crossing direction "UP" will be generated if the measured value reaches or exceeds "thresholdValue" + "hysteresis". A notification with crossing direction "DOWN" will be generated if the measured value reaches or undercuts "thresholdValue" - "hysteresis". The hysteresis is defined to prevent storms of threshold crossing notifications. When processing a request to create a threshold, implementations should enforce a suitable minimum value for this attribute (e.g. override the value or reject the request). type: number NfviCapacityInfoPerZone: type: object description: | This type defines the format of the NFVI capacity information on a per resource zone basis. The type shall comply with the provisions defined in table 10.5.2.5-1. required: - capacityMeasurements properties: resourceZoneId: description: | Identifies the resource zone of the applicable NFVI capacity information. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier capacityMeasurements: description: | Capacity measurement on a per resource type basis. type: array items: $ref: '#/components/schemas/NfviCapacityMeasurement' TimeInterval: type: object description: | This type defines the format of a time interval. The type shall comply with the provisions defined in table 10.5.2.7-1. required: - aTime properties: aTime: description: | First date and time of the interval. When only the startTime is present, there is no time interval being defined, and therefore the provided timing information refers to a specific point in time. $ref: ../../definitions/SOL005_def.yaml#/definitions/DateTime bTime: description: | Second date and time of the interval. Shall be present when a time interval is provided, and absent otherwise. When provided, the bTime shall be greater than aTime. When only the startTime is present, there is no time interval being defined, and therefore the provided timing information refers to a specific point in time. $ref: ../../definitions/SOL005_def.yaml#/definitions/DateTime NfviCapacityMeasurement: type: object description: | This type defines the format of the NFVI capacity information on a per resource type basis. The type shall comply with the provisions defined in table 10.5.2.6-1. required: - resourceType - capacityMeasurementName - totalCapacity - allocatedCapacity - availableCapacity properties: resourceType: description: | Type of resource. $ref: '#/components/schemas/NfviCapacityResourceTypeEnumeration' capacityMeasurementName: description: | Name of the capacity measurement. Different resource types can have different associated capacity measurements, typically associated to different sub-types of the resource type. The present document and referred documents do not specify the capacity measurements, thus the capacity measurement names are not specified in the present document version. type: string totalCapacity: description: | The total capacity. type: object allocatedCapacity: description: | The allocated/used capacity. type: object reservedCapacity: description: | The reserved capacity. Shall be present if the capacity measurement relates to a resource type and (and sub-type) that is reservable. type: object availableCapacity: description: | The available capacity. type: object NfviCapacityResourceTypeEnumeration: type: string description: | The enumeration NfviCapacityResourceTypeEnumeration shall comply with the provisions in table 10.5.4.3-1. * VR_COMPUTE: For virtualised compute resource. * VR_NETWORK: For virtualised network resource. * VR_STORAGE: For virtualised storage resource. * HOST_COMPUTE: For host compute resource. enum: - VR_COMPUTE - VR_NETWORK - VR_STORAGE - HOST_COMPUTE CapacityThresholdModifications: description: | This type represents modifications to a capacity threshold. It shall comply with the provisions defined in table 10.5.2.8-1. type: object properties: callbackUri: description: | New value of the "callbackUri" attribute. The value "null" is not permitted. At least one of the attributes defined in this type shall be present in request bodies. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri authentication: description: | New value of the "authentication" attribute, or "null" to remove the attribute. If present in a request body, these modifications shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396). This attribute shall not be present in response bodies. At least one of the attributes defined in this type shall be present in request bodies. $ref: ../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication No newline at end of file src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml 0 → 100644 +978 −0 Viewed Changes for src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml: 978 added lines, 0 removed lines. Original line number Diff line number Diff line openapi: 3.0.2 info: title: SOL005 - NFVI Capacity Information Interface description: | SOL005 - NFVI Capacity Information Interface IMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to and has not been approved by the ETSI NFV ISG. In case of discrepancies the published ETSI Group Specification takes precedence. Please report bugs to https://forge.etsi.org/rep/nfv/SOL005/issues contact: name: NFV-SOL WG license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: description: ETSI GS NFV-SOL 005 V3.3.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.03.01_60/gs_nfv-sol005v030301p.pdf servers: - url: http://127.0.0.1/nfvici/v1 - url: https://127.0.0.1/nfvici/v1 paths: /api_versions: $ref: ../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions /nfvi_capacity_infos: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query NFVI capacity information description: | The API consumer can use this method to retrieve information about NFVI capacity information. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/filter - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": $ref: '#/components/responses/NfviCapacityInfos.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 /nfvi_capacity_infos/{vimId}: parameters: - $ref: '#/components/parameters/VimId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query NFVI capacity information for a specific VIM description: | The API consumer can use this method for reading an individual VIM’s NFVI capacity information. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/filter - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": $ref: '#/components/responses/NfviCapacityInfo.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 /capacity_thresholds: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query NFVI capacity thresholds description: | This resource represents NFVI capacity thresholds. The API consumer can use this resource to create and query NFVI capacity thresholds. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/filter - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: "200": $ref: '#/components/responses/CapacityThresholds.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 post: summary: Create a NFVI capacity threshold description: | The POST method creates a new NFVI capacity threshold. As a result of successfully executing this method, a new "Individual capacity threshold" resource as defined in clause 10.4.5 shall have been created. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType requestBody: $ref: '#/components/requestBodies/NfviCapacityThresholdRequest' responses: "201": $ref: '#/components/responses/CapacityThresholds.Post' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 /capacity_thresholds/{capacityThresholdId}: parameters: - $ref: '#/components/parameters/CapacityThresholdId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query Individual NFVI capacity threshold description: | The API consumer can use this method for reading information about an NFVI capacity threshold. This method shall follow the provisions specified in the tables 10.4.5.3.2-1 and 10.4.5.3.2-2 for URI query parameters, request and response data structures, and response codes. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": $ref: '#/components/responses/IndividualCapacityThreshold.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 patch: summary: Modify an "Individual capacity threshold" resource description: | This method iallows to modify an "Individual capacity threshold" resource. This method shall follow the provisions specified in the Tables 10.4.5.3.4-1 and 10.4.5.3.4-2 for URI query parameters, request and response data structures, and response codes. requestBody: $ref: '#/components/requestBodies/IndividualNfviCapacityThresholdRequest' responses: "200": $ref: '#/components/responses/IndividualCapacityThreshold.Patch' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "412": $ref: ../responses/SOL005_resp.yaml#/components/responses/412 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 delete: summary: Delete an NFVI capacity threshold description: | This method allows to delete an NFVI capacity threshold. As a result of successfully executing this method, the "Individual capacity threshold" resource shall not exist any longer. responses: "204": $ref: '#/components/responses/IndividualCapacityThreshold.Delete' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 /subscriptions: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query multiple subscriptions. description: | The API consumer can use this method to query the list of active subscriptions to NFVI capacity information notifications subscribed by the API consumer. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/filter - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: "200": $ref: '#/components/responses/NfviCiSubscriptions.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 post: summary: Create an NFVI capacity subscription description: | The POST method creates a new subscription. This method shall follow the provisions specified in the Tables 10.4.6.3.1-1 and 10.4.6.3.1-2 for URI query parameters, request and response data structures, and response codes. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType requestBody: $ref: '#/components/requestBodies/NfviCapacitySubscriptionRequest' responses: "201": $ref: '#/components/responses/NfviCiSubscriptions.Post' "303": $ref: ../responses/SOL005_resp.yaml#/components/responses/303 "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 callbacks: CapacityShortageNotification: $ref: '#/components/callbacks/CapacityShortageNotification' /subscriptions/{subscriptionId}: parameters: - $ref: '#/components/parameters/SubscriptionId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Read an individual subscription resource description: | The API consumer can use this method for reading an individual subscription about NFVI capacity information notifications subscribed by the API consumer. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": $ref: '#/components/responses/NfviCiSubscription.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 delete: summary: Terminate a subscription. description: | This method terminates an individual subscription. This method shall follow the provisions specified in the Tables 10.4.7.3.5-1 and 10.4.7.3.5-2 for URI query parameters, request and response data structures, and response codes. responses: "204": $ref: '#/components/responses/NfviCiSubscription.Delete' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 components: parameters: VimId: name: vimId in: path description: | Identifier of the VIM with associated NFVI capacity information. This identifier can be retrieved from the "vimId" attribute in the CapacityShortageNotification. It can also be retrieved from the "vimId" attribute in the payload body of the response. required: true style: simple explode: false schema: type: string CapacityThresholdId: name: capacityThresholdId in: path description: | Identifier of the capacity threshold. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual capacity threshold" resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true style: simple explode: false schema: type: string SubscriptionId: name: subscriptionId in: path description: | Identifier of the subscription. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true style: simple explode: false schema: type: string requestBodies: NfviCapacityThresholdRequest: description: | Request parameters to create a new "Individual capacity threshold" resource. content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CreateCapacityThresholdRequest required: true IndividualNfviCapacityThresholdRequest: description: | Parameters for the capacity threshold modification. The Content-Type header shall be set to "application/merge-patch+json" according to IETF RFC 7396. content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThresholdModifications required: true NfviCapacitySubscriptionRequest: description: | Details of the subscription to be created. content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfoSubscriptionRequest required: true CapacityShortageNotificationRequest: description: | Notification about the available NFVI capacity having crossed below a threshold value or having re-covered from a capacity shortage. content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityShortageNotification required: true responses: NfviCapacityInfos.Get: description: | Shall be returned when information about NFVI capacity information has been queried successfully. The response body shall contain NFVI capacity information, as defined in clause 10.5.2.4. If the "filter" URI parameter was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clauses 5.2.2 of ETSI GS NFV-SOL 013. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: type: array items: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfo NfviCapacityInfo.Get: description: | Shall be returned when information of an individual VIM’s NFVI capacity has been read successfully. The response body shall contain a representation of the NFVI capacity information, as defined in clause 10.5.2.4. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfo CapacityThresholds.Get: description: | Shall be returned when information about zero or more capacity thresholds has been queried successfully. If the "filter" URI parameter was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clause 5.2.2 of ETSI GS NFV-SOL 013. The response body shall contain in an array the representations of zero or more capacity thresholds, as defined in clause 10.5.2.8. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: type: array items: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThreshold CapacityThresholds.Post: description: | Shall be returned when a capacity threshold has been created successfully. The response body shall contain a representation of the created "Individual capacity threshold" resource, as defined in clause 10.5.2.8. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThreshold IndividualCapacityThreshold.Get: description: | Shall be returned when information about an individual capacity threshold has been read successfully. The response body shall contain in a representation of the capacity threshold, as defined in clause 10.5.2.8. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThreshold IndividualCapacityThreshold.Patch: description: | 200 OK Shall be returned when the request has been processed successfully. The response body shall contain a data structure of type "CapacityThresholdModifications". headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThresholdModifications IndividualCapacityThreshold.Delete: description: | Shall be returned when the NFVI capacity threshold has been deleted successfully. The response body shall be empty. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: {} NfviCiSubscriptions.Get: description: | Shall be returned when the list of subscriptions has been queried successfully. The response body shall contain in an array the representations of all active subscriptions of the functional block that invokes the method, i.e. zero or more representations of NFVI capacity information subscriptions, as defined in clause 10.5.2.9. If the "filter" URI parameter was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clause 5.2.2 of ETSI GS NFV-SOL 013. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV SOL 013. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: type: array items: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfoSubscription NfviCiSubscriptions.Post: description: | Shall be returned when the subscription has been created successfully. A representation of the created subscription resource shall be returned in the response body, as defined in clause 10.5.2.9. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfoSubscription NfviCiSubscription.Get: description: | Shall be returned when the subscription has been read successfully. The response body shall contain a representation of the subscription resource, as defined in clause 10.5.2.9. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfoSubscription NfviCiSubscription.Delete: description: | Shall be returned when the subscription resource has been deleted successfully. The response body shall be empty. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: {} CapacityShortageNotification.Post: description: | Shall be returned when the notification has been delivered successfully. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: {} CapacityShortageNotification.Get: description: | Shall be returned to indicate that the notification endpoint has been tested successfully. The response body shall be empty. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: {} callbacks: CapacityShortageNotification: '{$request.body#/callbackUri}': description: >- This resource represents a notification endpoint for NFVI capacity information. The API producer can use this resource to send notifications related to log management events to a subscribed API consumer, which has provided the URI of this resource during the capacity threshold creation process. post: description: >- The POST method delivers a notification regarding an NFVI capacity information event from the API producer to an API consumer. The API consumer shall have previously created an "Individual capacity threshold" resource" parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization requestBody: $ref: "#/components/requestBodies/CapacityShortageNotificationRequest" responses: "204": $ref: '#/components/responses/CapacityShortageNotification.Post' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 get: description: >- The GET method allows the API producer to test the notification endpoint that is provided by the API consumer, e.g. during creation of the capacity threshold resource. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization responses: "204": $ref: '#/components/responses/CapacityShortageNotification.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 No newline at end of file Loading
docker/Dockerfile +4 −4 Viewed Changes for docker/Dockerfile: 4 added lines, 4 removed lines. Original line number Diff line number Diff line # Copyright ETSI 2017 # See: https://forge.etsi.org/etsi-forge-copyright-statement.txt FROM alpine:3.6 FROM alpine:3.10.0 RUN env RUN apk update Loading @@ -16,9 +16,9 @@ RUN gem install rdoc --pre || gem install rdoc --pre RUN gem install asciidoctor-pdf-cjk RUN wget https://forge.etsi.org/swagger2markup-cli-1.3.2.jar RUN npm config set proxy $http_proxy RUN npm install -g swagger-tools@0.10.3 RUN npm install -g json-refs@3.0.2 RUN npm install -g yamljs@0.3.0 RUN npm install -g swagger-cli RUN npm install -g json-refs RUN npm install -g yamljs ADD validate-in-docker.sh /validate-in-docker.sh RUN chmod +x /validate-in-docker.sh Loading
docker/validate-in-docker.sh +1 −1 Viewed Changes for docker/validate-in-docker.sh: 1 added line, 1 removed line. Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ function validate_api () { mv "${deliverable}-${api}-API.pdf" "../build/" echo "--- Validating ${merged_file}" swagger-tools validate "${merged_file}" swagger-cli validate "${merged_file}" vres=$? echo "--- Validation done ($vres)." Loading
src/SOL005/APIVersion/APIVersion.yaml +26 −37 Viewed Changes for src/SOL005/APIVersion/APIVersion.yaml: 26 added lines, 37 removed lines. Original line number Diff line number Diff line swagger: "2.0" openapi: 3.0.2 info: version: "1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" title: "SOL005 - API version interface" description: > SOL005 - API version Interface IMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to and has not been approved by the ETSI NFV ISG. In case of discrepancies the published ETSI Group Specification takes precedence. Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis title: SOL005 - API version interface description: | SOL005 - API version Interface IMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to and has not been approved by the ETSI NFV ISG. In case of discrepancies the published ETSI Group Specification takes precedence. Please report bugs to Please report bugs to https://forge.etsi.org/rep/nfv/SOL005/issues contact: name: NFV-SOL WG license: name: "ETSI Forge copyright notice" name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt contact: name: "NFV-SOL WG" version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: description: ETSI GS NFV-SOL 005 V2.7.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.07.01_60/gs_NFV-SOL005v020701p.pdf schemes: - http - https consumes: - application/json description: ETSI GS NFV-SOL 005 V3.3.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.03.01_60/gs_nfv-sol005v030301p.pdf produces: - application/json servers: - url: http://127.0.0.1/ - url: https://127.0.0.1/ paths: ############################################################################### # API Versions # ############################################################################### '/nsd/api_versions': $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' /nsd/api_versions: $ref: ../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions '/nsfm/api_versions': $ref: '../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions' /nsfm/api_versions: $ref: ../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions '/nslcm/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' /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 /vnfpkgm/api_versions: $ref: ../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions No newline at end of file
src/SOL005/NFVICapacityInformation/definitions/NFVICapacityInformation_def.yaml 0 → 100644 +457 −0 Viewed Changes for src/SOL005/NFVICapacityInformation/definitions/NFVICapacityInformation_def.yaml: 457 added lines, 0 removed lines. Original line number Diff line number Diff line components: schemas: NfviCapacityInfo: type: object description: | This type defines the format of the NFVI capacity information. The type shall comply with the provisions defined in Table 10.5.2.4-1. required: - id - vimId - capacityInfoPerZone properties: id: description: | Identifier of this NFVI capacity information. Its value shall be the same as vimId. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier vimId: description: | Identifies the VIM to which the NFVI capacity information is associated. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier capacityInfoPerZone: description: | Capacity information on a per resource zone basis under control by the associated VIM. type: array items: $ref: '#/components/schemas/NfviCapacityInfoPerZone' totalCapacityInfo: description: | Total capacity information associated to the VIM. $ref: '#/components/schemas/NfviCapacityMeasurement' timeInterval: description: | Time interval of the NFVI capacity information. $ref: '#/components/schemas/TimeInterval' CapacityThreshold: type: object description: | This type represents a capacity threshold. It shall comply with the provisions defined in table 10.5.2.8-1. required: - id - objectInstanceId - criteria - callbackUri - _links properties: id: description: | Identifier of this capacity threshold resource. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier objectInstanceId: description: | Identifier of the VIM instance associated with the capacity threshold. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier subObjectInstanceIds: description: | Identifiers of the sub-object instances of the measured object instance associate with this capacity threshold. If this attribute is absent, measurements are taken for all sub-object instances of the measured object instance. type: array items: $ref: ../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim criteria: description: | Criteria that define this capacity threshold. $ref: '#/components/schemas/CapacityThresholdCriteria' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri _links: type: object description: | Links for this resource. required: - self properties: self: description: | URI of this resource. $ref: ../../definitions/SOL005_def.yaml#/definitions/Link object: description: | Link to a resource representing the VIM’s NFVI capacity information. Shall be present if the VIM’s NFVI capacity information is accessible as a resource. $ref: ../../definitions/SOL005_def.yaml#/definitions/Link CreateCapacityThresholdRequest: type: object description: | This type represents a request to create a capacity threshold. It shall comply with the provisions defined in table 10.5.2.3-1. required: - objectInstanceId - criteria properties: objectInstanceId: description: | Identifier of the VIM instance associated with this capacity threshold. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier subObjectInstanceIds: description: | Identifiers of the sub-object instances of the measured object instance associate with this capacity threshold. If this attribute is absent, measurements will be taken for all sub-object instances of the measured object instance. type: array items: $ref: ../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim criteria: description: | Criteria that define this capacity threshold. $ref: '#/components/schemas/CapacityThresholdCriteria' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri authentication: description: | Authentication parameters to configure the use of Authorization when sending notifications corresponding to this capacity threshold, as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. This attribute shall only be present if the API consumer requires authorization of notifications. $ref: ../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication NfviCapacityInfoSubscription: type: object description: | This type represents a subscription. It shall comply with the provisions defined in Table 10.5.2.9-1. required: - id - callbackUri - _links properties: id: description: | Identifier that identifies the subscription. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier filter: description: | Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter. $ref: '#/components/schemas/NfviCapacityInfoNotificationsFilter' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri _links: type: object description: | Links to resources related to this resource. required: - self properties: self: description: | URI of this resource. $ref: ../../definitions/SOL005_def.yaml#/definitions/Link NfviCapacityInfoSubscriptionRequest: type: object description: | This type represents a subscription request. It shall comply with the provisions defined in Table 10.5.2.2-1. required: - callbackUri properties: filter: description: | Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter. $ref: '#/components/schemas/NfviCapacityInfoNotificationsFilter' callbackUri: description: | The URI of the endpoint to send the notification to. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri authentication: description: | Authentication parameters to configure the use of authorization when sending notifications corresponding to this subscription, as defined in clause 8.3.4 of ETSI GS NFV SOL 013. This attribute shall only be present if the subscriber requires authorization of notifications. $ref: ../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication CapacityShortageNotification: type: object description: | This notification informs the receiver that the available NFVI capacity has crossed below a threshold value or has re-covered from a capacity shortage. It shall comply with the provisions defined in Table 10.5.2.10-1. required: - id - notificationType - thresholdId - timeStamp - direction - capacityInformation - objectInstanceId 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 "CapacityShortageNotification" for this notification type. type: string thresholdId: description: | Identifier of the threshold which has been crossed $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: | Identifies the VIM’s NFVI capacity information instance (measured object instance) in which the available NFVI capacity has crossed a threshold value. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier subObjectInstanceId: description: | Identifier of the sub-object of the measured object to which the measurement applies. Refer to the definition of the "CapacityThreshold" in clause 10.5.2.7. $ref: ../../definitions/SOL005_def.yaml#/definitions/IdentifierInVim direction: description: | Specifies if the threshold has been crossed in UP or DOWN direction. type: string enum: - UP - DOWN capacityInformation: description: | Information about the available, reserved, allocated/used, and total capacity of the NFVI. If the threshold creation process does specify a resource zone and/or vimId, the information is provided for the resource zone/vimId where the NFVI capacity has crossed the thresholdas indicated by the "subObjectInstanceId" and "objectInstanceId" attributes. $ref: "#/components/schemas/NfviCapacityMeasurement" _links: description: | Links to resources related to this notification. type: object required: - threshold properties: objectInstance: description: | Link to the resource representing the measured object instance to which the notified change applies. Shall be present if the measured object 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 NfviCapacityInfoNotificationsFilter: type: object description: | This type represents a filter that can be used to subscribe for notifications related to NFVI capacity information events. It shall comply with the provisions defined in Table 10.5.3.2-1. properties: notificationTypes: description: | Match particular notification types. Permitted values: - CapacityShortageNotification type: array items: type: string enum: - CapacityShortageNotification CapacityThresholdCriteria: type: object description: | This type represents criteria that define a capacity threshold. It shall comply with the provisions defined in table 10.5.3.3-1. required: - capacityMetric - thresholdType properties: capacityMetric: description: | Defines the capacity metric for which the threshold applies. type: object required: - resourceType - capacityMeasurementName - capacityType properties: resourceType: description: | Type of resource. $ref: '#/components/schemas/NfviCapacityResourceTypeEnumeration' capacityMeasurementName: description: | Name of the capacity measurement. Different resource types can have different associated capacity measurements, typically associated to different sub-types of the resource type. type: string capacityType: description: | The type of capacity for the threshold. Permitted values: - TOTAL: for total capacity. - ALLOCATED: for allocated/used capacity. - RESERVED: for reserved capacity. - AVAILABLE: for available capacity. type: string enum: - TOTAL - ALLOCATED - RESERVED - AVAILABLE thresholdType: description: | Type of capacity threshold. This attribute determines which other attributes are present in the data structure. Permitted values: - SIMPLE: Single-valued static threshold. In the present document, simple thresholds are defined. The definition of additional threshold types is left for future specification. type: string enum: - SIMPLE simpleThresholdDetails: description: | Details of a simple threshold. Shall be present if thresholdType="SIMPLE". type: array items: type: object required: - thresholdValue - hysteresis properties: thresholdValue: description: | The threshold value. Shall be represented as a floating point number. type: number hysteresis: description: | The hysteresis of the threshold. Shall be represented as a non-negative floating point number. A notification with crossing direction "UP" will be generated if the measured value reaches or exceeds "thresholdValue" + "hysteresis". A notification with crossing direction "DOWN" will be generated if the measured value reaches or undercuts "thresholdValue" - "hysteresis". The hysteresis is defined to prevent storms of threshold crossing notifications. When processing a request to create a threshold, implementations should enforce a suitable minimum value for this attribute (e.g. override the value or reject the request). type: number NfviCapacityInfoPerZone: type: object description: | This type defines the format of the NFVI capacity information on a per resource zone basis. The type shall comply with the provisions defined in table 10.5.2.5-1. required: - capacityMeasurements properties: resourceZoneId: description: | Identifies the resource zone of the applicable NFVI capacity information. $ref: ../../definitions/SOL005_def.yaml#/definitions/Identifier capacityMeasurements: description: | Capacity measurement on a per resource type basis. type: array items: $ref: '#/components/schemas/NfviCapacityMeasurement' TimeInterval: type: object description: | This type defines the format of a time interval. The type shall comply with the provisions defined in table 10.5.2.7-1. required: - aTime properties: aTime: description: | First date and time of the interval. When only the startTime is present, there is no time interval being defined, and therefore the provided timing information refers to a specific point in time. $ref: ../../definitions/SOL005_def.yaml#/definitions/DateTime bTime: description: | Second date and time of the interval. Shall be present when a time interval is provided, and absent otherwise. When provided, the bTime shall be greater than aTime. When only the startTime is present, there is no time interval being defined, and therefore the provided timing information refers to a specific point in time. $ref: ../../definitions/SOL005_def.yaml#/definitions/DateTime NfviCapacityMeasurement: type: object description: | This type defines the format of the NFVI capacity information on a per resource type basis. The type shall comply with the provisions defined in table 10.5.2.6-1. required: - resourceType - capacityMeasurementName - totalCapacity - allocatedCapacity - availableCapacity properties: resourceType: description: | Type of resource. $ref: '#/components/schemas/NfviCapacityResourceTypeEnumeration' capacityMeasurementName: description: | Name of the capacity measurement. Different resource types can have different associated capacity measurements, typically associated to different sub-types of the resource type. The present document and referred documents do not specify the capacity measurements, thus the capacity measurement names are not specified in the present document version. type: string totalCapacity: description: | The total capacity. type: object allocatedCapacity: description: | The allocated/used capacity. type: object reservedCapacity: description: | The reserved capacity. Shall be present if the capacity measurement relates to a resource type and (and sub-type) that is reservable. type: object availableCapacity: description: | The available capacity. type: object NfviCapacityResourceTypeEnumeration: type: string description: | The enumeration NfviCapacityResourceTypeEnumeration shall comply with the provisions in table 10.5.4.3-1. * VR_COMPUTE: For virtualised compute resource. * VR_NETWORK: For virtualised network resource. * VR_STORAGE: For virtualised storage resource. * HOST_COMPUTE: For host compute resource. enum: - VR_COMPUTE - VR_NETWORK - VR_STORAGE - HOST_COMPUTE CapacityThresholdModifications: description: | This type represents modifications to a capacity threshold. It shall comply with the provisions defined in table 10.5.2.8-1. type: object properties: callbackUri: description: | New value of the "callbackUri" attribute. The value "null" is not permitted. At least one of the attributes defined in this type shall be present in request bodies. $ref: ../../definitions/SOL005_def.yaml#/definitions/Uri authentication: description: | New value of the "authentication" attribute, or "null" to remove the attribute. If present in a request body, these modifications shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396). This attribute shall not be present in response bodies. At least one of the attributes defined in this type shall be present in request bodies. $ref: ../../definitions/SOL005_def.yaml#/definitions/SubscriptionAuthentication No newline at end of file
src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml 0 → 100644 +978 −0 Viewed Changes for src/SOL005/NFVICapacityInformation/NFVICapacityInformation.yaml: 978 added lines, 0 removed lines. Original line number Diff line number Diff line openapi: 3.0.2 info: title: SOL005 - NFVI Capacity Information Interface description: | SOL005 - NFVI Capacity Information Interface IMPORTANT: Please note that this file might be not aligned to the current version of the ETSI Group Specification it refers to and has not been approved by the ETSI NFV ISG. In case of discrepancies the published ETSI Group Specification takes precedence. Please report bugs to https://forge.etsi.org/rep/nfv/SOL005/issues contact: name: NFV-SOL WG license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: description: ETSI GS NFV-SOL 005 V3.3.1 url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/03.03.01_60/gs_nfv-sol005v030301p.pdf servers: - url: http://127.0.0.1/nfvici/v1 - url: https://127.0.0.1/nfvici/v1 paths: /api_versions: $ref: ../endpoints/SOL005_endpoints.yaml#/endpoints/api-versions /nfvi_capacity_infos: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query NFVI capacity information description: | The API consumer can use this method to retrieve information about NFVI capacity information. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/filter - $ref: ../components/SOL005_params.yaml#/components/parameters/all_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_fields - $ref: ../components/SOL005_params.yaml#/components/parameters/exclude_default - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": $ref: '#/components/responses/NfviCapacityInfos.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 /nfvi_capacity_infos/{vimId}: parameters: - $ref: '#/components/parameters/VimId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query NFVI capacity information for a specific VIM description: | The API consumer can use this method for reading an individual VIM’s NFVI capacity information. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/filter - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": $ref: '#/components/responses/NfviCapacityInfo.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 /capacity_thresholds: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query NFVI capacity thresholds description: | This resource represents NFVI capacity thresholds. The API consumer can use this resource to create and query NFVI capacity thresholds. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/filter - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: "200": $ref: '#/components/responses/CapacityThresholds.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 post: summary: Create a NFVI capacity threshold description: | The POST method creates a new NFVI capacity threshold. As a result of successfully executing this method, a new "Individual capacity threshold" resource as defined in clause 10.4.5 shall have been created. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType requestBody: $ref: '#/components/requestBodies/NfviCapacityThresholdRequest' responses: "201": $ref: '#/components/responses/CapacityThresholds.Post' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 /capacity_thresholds/{capacityThresholdId}: parameters: - $ref: '#/components/parameters/CapacityThresholdId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query Individual NFVI capacity threshold description: | The API consumer can use this method for reading information about an NFVI capacity threshold. This method shall follow the provisions specified in the tables 10.4.5.3.2-1 and 10.4.5.3.2-2 for URI query parameters, request and response data structures, and response codes. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": $ref: '#/components/responses/IndividualCapacityThreshold.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 patch: summary: Modify an "Individual capacity threshold" resource description: | This method iallows to modify an "Individual capacity threshold" resource. This method shall follow the provisions specified in the Tables 10.4.5.3.4-1 and 10.4.5.3.4-2 for URI query parameters, request and response data structures, and response codes. requestBody: $ref: '#/components/requestBodies/IndividualNfviCapacityThresholdRequest' responses: "200": $ref: '#/components/responses/IndividualCapacityThreshold.Patch' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "412": $ref: ../responses/SOL005_resp.yaml#/components/responses/412 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 delete: summary: Delete an NFVI capacity threshold description: | This method allows to delete an NFVI capacity threshold. As a result of successfully executing this method, the "Individual capacity threshold" resource shall not exist any longer. responses: "204": $ref: '#/components/responses/IndividualCapacityThreshold.Delete' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 /subscriptions: parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Query multiple subscriptions. description: | The API consumer can use this method to query the list of active subscriptions to NFVI capacity information notifications subscribed by the API consumer. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/filter - $ref: ../components/SOL005_params.yaml#/components/parameters/nextpage_opaque_marker responses: "200": $ref: '#/components/responses/NfviCiSubscriptions.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 post: summary: Create an NFVI capacity subscription description: | The POST method creates a new subscription. This method shall follow the provisions specified in the Tables 10.4.6.3.1-1 and 10.4.6.3.1-2 for URI query parameters, request and response data structures, and response codes. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/ContentType requestBody: $ref: '#/components/requestBodies/NfviCapacitySubscriptionRequest' responses: "201": $ref: '#/components/responses/NfviCiSubscriptions.Post' "303": $ref: ../responses/SOL005_resp.yaml#/components/responses/303 "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 callbacks: CapacityShortageNotification: $ref: '#/components/callbacks/CapacityShortageNotification' /subscriptions/{subscriptionId}: parameters: - $ref: '#/components/parameters/SubscriptionId' - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization get: summary: Read an individual subscription resource description: | The API consumer can use this method for reading an individual subscription about NFVI capacity information notifications subscribed by the API consumer. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept responses: "200": $ref: '#/components/responses/NfviCiSubscription.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 delete: summary: Terminate a subscription. description: | This method terminates an individual subscription. This method shall follow the provisions specified in the Tables 10.4.7.3.5-1 and 10.4.7.3.5-2 for URI query parameters, request and response data structures, and response codes. responses: "204": $ref: '#/components/responses/NfviCiSubscription.Delete' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 components: parameters: VimId: name: vimId in: path description: | Identifier of the VIM with associated NFVI capacity information. This identifier can be retrieved from the "vimId" attribute in the CapacityShortageNotification. It can also be retrieved from the "vimId" attribute in the payload body of the response. required: true style: simple explode: false schema: type: string CapacityThresholdId: name: capacityThresholdId in: path description: | Identifier of the capacity threshold. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual capacity threshold" resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true style: simple explode: false schema: type: string SubscriptionId: name: subscriptionId in: path description: | Identifier of the subscription. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved from the "id" attribute in the payload body of that response. required: true style: simple explode: false schema: type: string requestBodies: NfviCapacityThresholdRequest: description: | Request parameters to create a new "Individual capacity threshold" resource. content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CreateCapacityThresholdRequest required: true IndividualNfviCapacityThresholdRequest: description: | Parameters for the capacity threshold modification. The Content-Type header shall be set to "application/merge-patch+json" according to IETF RFC 7396. content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThresholdModifications required: true NfviCapacitySubscriptionRequest: description: | Details of the subscription to be created. content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfoSubscriptionRequest required: true CapacityShortageNotificationRequest: description: | Notification about the available NFVI capacity having crossed below a threshold value or having re-covered from a capacity shortage. content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityShortageNotification required: true responses: NfviCapacityInfos.Get: description: | Shall be returned when information about NFVI capacity information has been queried successfully. The response body shall contain NFVI capacity information, as defined in clause 10.5.2.4. If the "filter" URI parameter was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clauses 5.2.2 of ETSI GS NFV-SOL 013. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: type: array items: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfo NfviCapacityInfo.Get: description: | Shall be returned when information of an individual VIM’s NFVI capacity has been read successfully. The response body shall contain a representation of the NFVI capacity information, as defined in clause 10.5.2.4. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfo CapacityThresholds.Get: description: | Shall be returned when information about zero or more capacity thresholds has been queried successfully. If the "filter" URI parameter was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clause 5.2.2 of ETSI GS NFV-SOL 013. The response body shall contain in an array the representations of zero or more capacity thresholds, as defined in clause 10.5.2.8. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV-SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: type: array items: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThreshold CapacityThresholds.Post: description: | Shall be returned when a capacity threshold has been created successfully. The response body shall contain a representation of the created "Individual capacity threshold" resource, as defined in clause 10.5.2.8. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThreshold IndividualCapacityThreshold.Get: description: | Shall be returned when information about an individual capacity threshold has been read successfully. The response body shall contain in a representation of the capacity threshold, as defined in clause 10.5.2.8. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThreshold IndividualCapacityThreshold.Patch: description: | 200 OK Shall be returned when the request has been processed successfully. The response body shall contain a data structure of type "CapacityThresholdModifications". headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/CapacityThresholdModifications IndividualCapacityThreshold.Delete: description: | Shall be returned when the NFVI capacity threshold has been deleted successfully. The response body shall be empty. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: {} NfviCiSubscriptions.Get: description: | Shall be returned when the list of subscriptions has been queried successfully. The response body shall contain in an array the representations of all active subscriptions of the functional block that invokes the method, i.e. zero or more representations of NFVI capacity information subscriptions, as defined in clause 10.5.2.9. If the "filter" URI parameter was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clause 5.2.2 of ETSI GS NFV-SOL 013. If the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of ETSI GS NFV SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV SOL 013. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: type: array items: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfoSubscription NfviCiSubscriptions.Post: description: | Shall be returned when the subscription has been created successfully. A representation of the created subscription resource shall be returned in the response body, as defined in clause 10.5.2.9. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfoSubscription NfviCiSubscription.Get: description: | Shall be returned when the subscription has been read successfully. The response body shall contain a representation of the subscription resource, as defined in clause 10.5.2.9. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: application/json: schema: $ref: ./definitions/NFVICapacityInformation_def.yaml#/components/schemas/NfviCapacityInfoSubscription NfviCiSubscription.Delete: description: | Shall be returned when the subscription resource has been deleted successfully. The response body shall be empty. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: {} CapacityShortageNotification.Post: description: | Shall be returned when the notification has been delivered successfully. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: {} CapacityShortageNotification.Get: description: | Shall be returned to indicate that the notification endpoint has been tested successfully. The response body shall be empty. headers: Version: description: | Version of the API used in the response. style: simple explode: false schema: type: string 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. style: simple explode: false schema: type: string Content-Type: description: The MIME type of the body of the response. style: simple explode: false schema: type: string content: {} callbacks: CapacityShortageNotification: '{$request.body#/callbackUri}': description: >- This resource represents a notification endpoint for NFVI capacity information. The API producer can use this resource to send notifications related to log management events to a subscribed API consumer, which has provided the URI of this resource during the capacity threshold creation process. post: description: >- The POST method delivers a notification regarding an NFVI capacity information event from the API producer to an API consumer. The API consumer shall have previously created an "Individual capacity threshold" resource" parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization requestBody: $ref: "#/components/requestBodies/CapacityShortageNotificationRequest" responses: "204": $ref: '#/components/responses/CapacityShortageNotification.Post' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 get: description: >- The GET method allows the API producer to test the notification endpoint that is provided by the API consumer, e.g. during creation of the capacity threshold resource. parameters: - $ref: ../components/SOL005_params.yaml#/components/parameters/Version - $ref: ../components/SOL005_params.yaml#/components/parameters/Accept - $ref: ../components/SOL005_params.yaml#/components/parameters/Authorization responses: "204": $ref: '#/components/responses/CapacityShortageNotification.Get' "400": $ref: ../responses/SOL005_resp.yaml#/components/responses/400 "401": $ref: ../responses/SOL005_resp.yaml#/components/responses/401 "403": $ref: ../responses/SOL005_resp.yaml#/components/responses/403 "404": $ref: ../responses/SOL005_resp.yaml#/components/responses/404 "405": $ref: ../responses/SOL005_resp.yaml#/components/responses/405 "406": $ref: ../responses/SOL005_resp.yaml#/components/responses/406 "422": $ref: ../responses/SOL005_resp.yaml#/components/responses/422 "500": $ref: ../responses/SOL005_resp.yaml#/components/responses/500 "503": $ref: ../responses/SOL005_resp.yaml#/components/responses/503 "504": $ref: ../responses/SOL005_resp.yaml#/components/responses/504 No newline at end of file