swagger: "2.0" info: version: "2.3.0" title: SOL003 license: name: "ETSI Forge copyright notice" url: https://forge.etsi.org/etsi-forge-copyright-notice.txt basePath: "/vnfpm/v1" schemes: - https consumes: - "application/json" produces: - "application/json" paths: ############################################################################### # PM jobs # ############################################################################### '/pm_jobs': #SOL003 location: 6.4.2 post: description: > The POST method creates a PM job. parameters: - name: CreatePmJobRequest description: The VNF creation parameters in: body required: true schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/CreatePmJobRequest" - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Content-Type description: > The MIME type of the body of the request. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 201: description: > The PM job was created successfully. The response body shall contain a representation of the created PM job resource. The HTTP response shall include a "Location" HTTP header that points to the created PM job resource. headers: Location: description: The resource URI of the created PM Job type: string format: url WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" get: description: > The client can use this method to retrieve information about PM jobs. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string - name: Content-Type description: > The MIME type of the body of the request. Reference: IETF RFC 7231 in: header required: true type: string responses: 200: description: > Information about zero or more PM jobs was queried successfully. The response body shall contain representations of zero or more PM jobs. headers: WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: type: array items: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400-attr-based-filtering-error" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" ############################################################################### # Individual PM job # ############################################################################### '/pm_jobs/{pmJobId}': #SOL003 location: 6.4.3 parameters: - name: pmJobId description: > Identifier of the PM job. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new PM job resource. It can also be retrieved from the "id" attribute in the payload body of that response. in: path type: string required: true get: description: > The client can use this method for reading an individual PM job. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 200: description: > Information about an individual PM job was queried successfully. The response body shall contain a representation of the PM job resource. headers: WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" delete: description: > This method terminates an individual PM job. parameters: - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 204: description: > The PM job was deleted successfully. The response body shall be empty. headers: WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" ############################################################################### # Individual performance report # ############################################################################### '/pm_jobs/{pmJobId}/reports/{reportId}': #SOL003 location: 6.4.4 parameters: - name: pmJobId description: > Identifier of the PM job. in: path type: string required: true - name: reportId description: > Identifier of the performance report. in: path type: string required: true get: description: > The client can use this method for reading an individual performance report. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 200: description: > Information of an individual performance report was read successfully. The response body shall contain a representation of the performance report resource. headers: WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: $ref: "definitions/VNFPerformanceManagement_def.yaml#/definitions/PerformanceReport" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" ############################################################################### # Thresholds # ############################################################################### '/thresholds': #SOL003 location: 6.4.5 post: description: > The POST method can be used by the client to create a threshold. parameters: - name: CreateThresholdRequest description: > Request parameters to create a threshold resource. in: body required: true schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/CreateThresholdRequest" - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string - name: Content-Type description: > The MIME type of the body of the request. Reference: IETF RFC 7231 in: header required: true type: string responses: 201: description: > A threshold was created successfully. The response body shall contain a representation of the created threshold resource. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created threshold resource. headers: Location: description: The resource URI of the created VNF instance type: string format: url WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" get: description: > The client can use this method to query information about thresholds. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 200: description: > Information about zero or more thresholds was queried successfully. The response body shall contain representations of zero or more thresholds. headers: Location: description: The resource URI of the created VNF instance type: string format: url WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: type: array items: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400-attr-based-filtering-error" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" ############################################################################### # Individual threshold # ############################################################################### '/thresholds/{thresholdId}': #SOL003 location: 6.4.6 parameters: - name: thresholdId description: > Identifier of the 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 threshold resource. It can also be retrieved from the "id" attribute in the payload body of that response. in: path type: string required: true get: description: > The client can use this method for reading an individual threshold. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 200: description: > Information about an individual threshold was queried successfully. The response body shall contain a representation of the threshold. headers: WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" delete: description: > This method allows to delete a threshold. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 204: description: > The threshold was deleted successfully. The response body shall be empty. headers: WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" ############################################################################### # Subscriptions # ############################################################################### '/subscriptions': #SOL003 location: 6.4.7 post: description: > The POST method creates a new subscription. parameters: - name: PmSubscriptionRequest description: > Details of the subscription to be created. in: body required: true schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmSubscriptionRequest" - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string - name: Content-Type description: > The MIME type of the body of the request. Reference: IETF RFC 7231 in: header required: true type: string responses: 201: description: > The subscription was created successfully. A representation of the created subscription resource shall be returned in the response body. The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource. headers: Location: description: The resource URI of the created VNF instance type: string format: url WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmSubscription" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" get: description: > The client can use this method to query the list of active subscriptions to Performance management notifications subscribed by the client. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 200: description: > The list of subscriptions was queried successfully. The response body shall contain the representations of all active subscriptions of the functional block that invokes the method. headers: Content-Type: description: > The MIME type of the body of the request. Reference: IETF RFC 7231 type: string maximum: 1 minimum: 1 WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: type: array items: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmSubscription" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400-attr-based-filtering-error" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" ############################################################################### # Individual subscription # ############################################################################### '/subscriptions/{subscriptionId}': #SOL003 location: 6.4.8 parameters: - name: subscriptionId description: > 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. in: path type: string required: true get: description: > The client can use this method for reading an individual subscription about Performance management notifications subscribed by the client. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 200: description: > The subscription was read successfully. The response body shall contain a representation of the subscription resource. headers: Content-Type: description: > The MIME type of the body of the request. Reference: IETF RFC 7231 type: string maximum: 1 minimum: 1 WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 schema: $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmSubscription" 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503" delete: description: > This method terminates an individual subscription. parameters: - name: Accept description: > Content-Types that are acceptable for the response. Reference: IETF RFC 7231 in: header required: true type: string - name: Authorization description: > The authorization token for the request. Reference: IETF RFC 7235 in: header required: true type: string responses: 204: description: > The subscription resource was deleted successfully. The response body shall be empty. headers: WWW-Authenticate: description: > Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. type: string maximum: 1 minimum: 0 400: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400" 401: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401" 403: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403" 405: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405" 406: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406" 500: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500" 503: $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"