openapi: 3.2.0 info: title: Mef Performance Profile API version: 5.0.0 description: 'Operations tagged performanceProfile across 3 of this provider''s published API definitions: mef-lso-allegro-performance-monitoring-openapi.yml, mef-lso-interlude-performance-monitoring-openapi.yml, mef-lso-legato-performance-monitoring-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://{serverBase}/mefApi/allegro/performanceMonitoring/v5/ variables: serverBase: default: mplify.com description: The base hostname of the SOF (Service Orchestration Function) server. - url: https://{serverBase}/mefApi/interlude/performanceMonitoring/v5/ variables: serverBase: default: mplify.com description: The base hostname of the SOF (Service Orchestration Function) server. - url: https://{serverBase}/mefApi/legato/performanceMonitoring/v5/ variables: serverBase: default: mplify.com description: The base hostname of the SOF (Service Orchestration Function) server. tags: - name: performanceProfile paths: /performanceProfile: get: description: The Buyer/Client requests a list of Performance Monitoring Profiles based on a set of filter criteria. The Seller/Server returns a list of PM Profiles. For each PM Profile returned, the Seller/Server also provides a Performance Monitoring Profile Identifier that uniquely identifies this PM Profile within the Seller/Server. The order of the elements returned to the Buyer is defined by the Seller/Server (e.g. natural order) and does not change between the pages. operationId: listPerformanceProfile parameters: - description: Date when the profile was created - greater than. explode: true in: query name: creationDateTime.gt required: false schema: format: date-time type: string style: form - description: Date when the profile was created - lower than. explode: true in: query name: creationDateTime.lt required: false schema: format: date-time type: string style: form - description: Type of the Performance Job. explode: true in: query name: jobType required: false schema: $ref: '#/components/schemas/JobType' style: form - description: The priority of the Performance Job. explode: true in: query name: jobPriority required: false schema: type: string style: form - description: The lifecycle status of the Performance Profile. explode: true in: query name: lifecycleStatus required: false schema: $ref: '#/components/schemas/PerformanceProfileLifecycleStatusType' style: form - description: Requested index for start of item to be provided in response requested by the client. Note that the index starts with "0". explode: true in: query name: offset required: false schema: type: integer style: form - description: Requested number of resources to be provided in response. explode: true in: query name: limit required: false schema: format: int32 type: integer style: form responses: '200': content: application/json;charset=utf-8: schema: type: array items: $ref: '#/components/schemas/PerformanceProfile' description: '''OK. (https://tools.ietf.org/html/rfc7231#section-6.3.1)''' headers: X-Pagination-Throttled: description: Used to indicate that result page was throttled to maximum possible size and there are additional results that can be fetched. explode: false schema: type: boolean style: simple X-Total-Count: description: The total number of matching items. E.g. if there are 50 matching items in total, but the request has offset=10 and limit=10, then the X-Total-Count is 50. explode: false schema: type: integer style: simple X-Result-Count: description: The number of items included in the response. explode: false schema: type: integer style: simple '400': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error400' description: Bad Request '401': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error401' description: Unauthorized '403': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error403' description: Forbidden '422': content: application/json;charset=utf-8: schema: items: $ref: '#/components/schemas/Error422' type: array description: Unprocessable entity due to the business validation problems. '500': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error500' description: Internal Server Error summary: List or find Performance Profile objects. tags: - performanceProfile post: description: A request initiated by the Buyer/Client to create a Performance Monitoring Profile in the Seller/Server system. operationId: createPerformanceProfile requestBody: content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/PerformanceProfile_Create' description: The Performance Monitoring Profile to be created. required: true responses: '201': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/PerformanceProfile' description: '''Created (https://tools.ietf.org/html/rfc7231#section-6.3.2)''' '400': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error400' description: Bad Request '401': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error401' description: Unauthorized '403': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error403' description: Forbidden '422': content: application/json;charset=utf-8: schema: items: $ref: '#/components/schemas/Error422' type: array description: Unprocessable entity due to the business validation problems. '500': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error500' description: Internal Server Error summary: Creates a Performance Profile. tags: - performanceProfile servers: - url: https://{serverBase}/mefApi/allegro/performanceMonitoring/v5/ variables: serverBase: default: mplify.com description: The base hostname of the SOF (Service Orchestration Function) server. /performanceProfile/{id}: delete: description: The Buyer/Client requests deletion of Performance Monitoring Profile by specifying Performance Monitoring Profile Identifier. operationId: deletePerformanceProfile parameters: - description: Identifier of the Performance Profile. explode: false in: path name: id required: true schema: type: string style: simple responses: '204': description: Deleted '400': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error400' description: Bad request '401': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error401' description: Unauthorized '403': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error403' description: Forbidden '404': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error404' description: Not Found '422': content: application/json;charset=utf-8: schema: items: $ref: '#/components/schemas/Error422' type: array description: Unprocessable entity due to the business validation problems. '500': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error500' description: Internal Server Error summary: Deletes a Performance Profile. tags: - performanceProfile get: description: The Buyer/Client requests detailed information about a single Performance Monitoring Profile based on the Performance Monitoring Profile Identifier. operationId: retrievePerformanceProfile parameters: - description: Identifier of the Performance Profile. explode: false in: path name: id required: true schema: type: string style: simple responses: '200': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/PerformanceProfile' description: '''OK. (https://tools.ietf.org/html/rfc7231#section-6.3.1)''' '400': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error400' description: Bad Request '401': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error401' description: Unauthorized '403': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error403' description: Forbidden '404': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error404' description: Not Found '500': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error500' description: Internal Server Error summary: Retrieves a Performance Profile by ID. tags: - performanceProfile patch: description: A request initiated by the Buyer/Client to modify a Performance Monitoring Profile in the Seller/Server system based on a Performance Monitoring Profile Identifier. operationId: modifyPerformanceProfile parameters: - description: Identifier of the Performance Profile. explode: false in: path name: id required: true schema: type: string style: simple requestBody: content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/PerformanceProfile_Update' description: The Performance Profile to be updated. required: true responses: '200': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/PerformanceProfile' description: '''Updated (https://tools.ietf.org/html/rfc7231#section-6.3.1)''' '400': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error400' description: Bad Request '401': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error401' description: Unauthorized '403': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error403' description: Forbidden '404': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error404' description: Not Found '409': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error409' description: Conflict '500': content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error500' description: Internal Server Error summary: Updates partially a Performance Profile. tags: - performanceProfile servers: - url: https://{serverBase}/mefApi/allegro/performanceMonitoring/v5/ variables: serverBase: default: mplify.com description: The base hostname of the SOF (Service Orchestration Function) server. components: schemas: OutputFormat: type: string description: List of possible output formats for the Report. enum: - json - xml - avro - csv Error403Code: type: string description: 'This code indicates that the server understood the request but refuses to authorize it because of one of the following error codes: - accessDenied: Access denied - forbiddenRequester: Forbidden requester - tooManyUsers: Too many users.' enum: - accessDenied - forbiddenRequester - tooManyUsers PerformanceProfile_Create: type: object description: A Performance Monitoring Profile specifies the common performance configuration that can be reused by multiple Performance Jobs. properties: description: type: string description: A free-text description of the Performance Profile. granularity: $ref: '#/components/schemas/TimeDuration' description: Sampling rate of the collection or production of performance indicators. jobPriority: type: integer default: 5 description: The priority of the Performance Job. The way the management application will use the Job priority to schedule Job execution is application-specific and out the scope. jobType: $ref: '#/components/schemas/JobType' description: The type of PM Job. lifecycleStatus: $ref: '#/components/schemas/PerformanceProfileLifecycleStatusType' description: Lifecycle Status is used to indicate the lifecycle status of the Performance Profile. outputFormat: $ref: '#/components/schemas/OutputFormat' description: List of possible output formats for the Performance Report. reportingPeriod: $ref: '#/components/schemas/TimeDuration' description: Defines the interval for the report generation. resultFormat: $ref: '#/components/schemas/ResultFormat' description: List of possible result formats that define how Seller/Server will deliver Performance Report to the Buyer/Client. serviceSpecificConfiguration: $ref: '#/components/schemas/ServiceSpecificConfiguration' description: ServiceSpecificConfiguration is used as an extension point for Mplify -specific service performance monitoring configuration. required: - granularity - jobType - lifecycleStatus - outputFormat - reportingPeriod - resultFormat - serviceSpecificConfiguration JobType: type: string description: The type of a Job. Proactive jobs are carried on continuously to permit timely reporting of fault or performance status. On-demand jobs are actions that are initiated for a limited time to carry out the measurements. Passive jobs support the collection and reporting of network and service statistics/faults. enum: - proactive - on-demand - passive PerformanceProfile_Update: type: object description: A Performance Monitoring Profile specifies the common performance configuration that can be reused by multiple Performance Jobs. properties: description: type: string description: A free-text description of the Performance Profile. granularity: $ref: '#/components/schemas/TimeDuration' description: Sampling rate of the collection or production of performance indicators. jobPriority: type: integer default: 5 description: The priority of the Performance Job. The way the management application will use the Job priority to schedule Job execution is application-specific and out the scope. lifecycleStatus: $ref: '#/components/schemas/PerformanceProfileLifecycleStatusType' description: Lifecycle Status is used to indicate the lifecycle status of the Performance Profile. outputFormat: $ref: '#/components/schemas/OutputFormat' description: List of possible output formats for the Performance Report. reportingPeriod: $ref: '#/components/schemas/TimeDuration' description: Defines the interval for the report generation. resultFormat: $ref: '#/components/schemas/ResultFormat' description: List of possible result formats that define how Seller/Server will deliver Performance Report to the Buyer/Client. serviceSpecificConfiguration: $ref: '#/components/schemas/ServiceSpecificConfiguration' description: ServiceSpecificConfiguration is used as an extension point for Mplify -specific service performance monitoring configuration. Error401Code: type: string description: 'One of the following error codes: - missingCredentials: No credentials provided - invalidCredentials: Provided credentials are invalid or expired.' enum: - missingCredentials - invalidCredentials Error400: allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: $ref: '#/components/schemas/Error400Code' required: - code description: '''Bad Request. (https://tools.ietf.org/html/rfc7231#section-6.5.1)''' Error500: allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: type: string description: 'The following error code: - internalError: Internal server error - the server encountered an unexpected condition that prevented it from fulfilling the request.' enum: - internalError required: - code description: Internal Server Error. (https://tools.ietf.org/html/rfc7231#section-6.6.1) PerformanceProfile: allOf: - $ref: '#/components/schemas/PerformanceProfile_Create' - type: object properties: creationDateTime: type: string format: date-time description: Date when the Performance Profile was created. href: type: string format: uri description: Hyperlink reference id: type: string description: Unique identifier isAssigned: description: Indicates if Performance Profile is assigned to a Performance Job. type: boolean lastTimeModified: type: string format: date-time description: Date when the Performance Profile was last modified. required: - creationDateTime - id - isAssigned description: A Performance Monitoring Profile specifies the common performance configuration that can be reused by multiple Performance Jobs. TimeDurationUnits: description: The unit of measure in the duration. For example, if an interval is 2ms, this element is MS. type: string enum: - NS - US - MS - SEC - MIN - HOUR - DAY - WEEK - MONTH - YEAR Error400Code: type: string description: "One of the following error codes:\n- missingQueryParameter: The URI is missing a required query-string \n parameter\n- missingQueryValue: The URI is missing a required query-string \n parameter value\n- invalidQuery: The query section of the URI is invalid\n- invalidBody: The request has an invalid body." enum: - missingQueryParameter - missingQueryValue - invalidQuery - invalidBody Error401: allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: $ref: '#/components/schemas/Error401Code' required: - code description: '''Unauthorized. (https://tools.ietf.org/html/rfc7235#section-3.1)''' Error: type: object description: Standard Class used to describe API response error Not intended to be used directly. The `code` in the HTTP header is used as a discriminator for the type of error returned in runtime. properties: message: type: string description: Text that provides more details and corrective actions related to the error. This can be shown to a client user. reason: type: string description: Text that explains the reason for the error. This can be shown to a client user. maxLength: 255 referenceError: type: string description: URL pointing to documentation describing the error. format: uri required: - reason Error422: allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: $ref: '#/components/schemas/Error422Code' propertyPath: type: string description: 'A pointer to a particular property of the payload that caused the validation issue. It is highly recommended that this property should be used. Defined using JavaScript Object Notation (JSON) Pointer (https://tools.ietf.org/html/rfc6901).' required: - code description: Unprocessable entity due to a business validation problem. (https://tools.ietf.org/html/rfc4918#section-11.2) Error422Code: type: string description: "One of the following error codes:\n- missingProperty: The property that was expected is not present in the\n payload\n- invalidValue: The property has an incorrect value\n- invalidFormat: The property value does not comply with the expected \n value format\n- referenceNotFound: The object referenced by the property cannot be \n identified in the target system\n- unexpectedProperty: Additional, not expected property has been \n provided\n- tooLargeDataset: The requested entity will produce too much data\n- tooManyRecords: The number of records to be provided in the response\n exceeds the threshold\n- tooManyRequests: The number of simultaneous requests from one API \n client exceeds the threshold\n- performanceProfileInUse: Requested Performance Profile is being used\n by a Performance Job\n- otherIssue: Other problem was identified (detailed information\n provided in a reason)." enum: - missingProperty - invalidValue - invalidFormat - referenceNotFound - unexpectedProperty - tooLargeDataset - tooManyRecords - tooManyRequests - performanceProfileInUse - otherIssue TimeDuration: description: This class is used to describe durations expressed as a 2-tuple, (value, units). The units from nanoseconds to years. type: object properties: timeDurationValue: description: The value of the duration. For example, if the duration is 20 ms, this element is 20. type: integer timeDurationUnits: description: The unit of measure in the duration. For example, if an interval is 2ms, this element is MS. $ref: '#/components/schemas/TimeDurationUnits' required: - timeDurationUnits - timeDurationValue Error404: allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: type: string description: "The following error code:\n- notFound: A current representation of the target resource \n not found." enum: - notFound required: - code description: Resource for the requested path not found. (https://tools.ietf.org/html/rfc7231#section-6.5.4) ServiceSpecificConfiguration: type: object description: ServiceSpecificConfiguration is used as an extension point for Mplify -specific service performance monitoring configuration. The `@type` attribute is used as a discriminator. discriminator: propertyName: '@type' properties: '@type': type: string description: Uniquely identifies the type of performance monitoring configuration that specifies PM objectives. In the case of Mplify services, this is the URN provided in the performance monitoring configuration specification. The named type must be a subclass of ServiceSpecificConfiguration. required: - '@type' Error403: allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: $ref: '#/components/schemas/Error403Code' required: - code description: Forbidden. This code indicates that the server understood the request but refused to authorize it. (https://tools.ietf.org/html/rfc7231#section-6.5.3) Error409: allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: type: string description: 'The following error code: - conflict: The client has provided a value whose semantics are not appropriate for the property.' enum: - conflict required: - code description: Conflict (https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.8) ResultFormat: type: string description: List of possible result formats that define how Seller/Server will deliver a Report to the Buyer/Client. enum: - attachment - payload PerformanceProfileLifecycleStatusType: type: string description: 'Possible values for the Performance Profile Status. | State | Mplify 133.1 name | Description | | -------------- | ------------------ | ----------------------------------------------------------------------------- | | `approved` | Approved | Performance Monitoring Profile has been approved for general use. | | `deprecated` | In-Deprecated | Performance Monitoring Profile has been replaced by another profile. | | `experimental` | Experimental | Performance Monitoring Profile use may be limited to a small number of users. | | `pending` | Pending | Performance Monitoring Profile is waiting to be approved. |' enum: - approved - deprecated - experimental - pending x-refined-from: - mef-lso-allegro-performance-monitoring-openapi.yml - mef-lso-interlude-performance-monitoring-openapi.yml - mef-lso-legato-performance-monitoring-openapi.yml