diff --git a/OpenAPI/5gcNrm.yaml b/OpenAPI/5gcNrm.yaml index d5adbd23059852cd96e48106857e7159714de26c..5b199fe488ed85c10b12c920f1a1da8f71f7a742 100644 --- a/OpenAPI/5gcNrm.yaml +++ b/OpenAPI/5gcNrm.yaml @@ -1,13 +1,13 @@ openapi: 3.0.1 info: title: 3GPP 5GC NRM - version: 16.5.0 + version: 16.6.0 description: >- OAS 3.0.1 specification of the 5GC NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.541 V16.4.0; 5G NRM, 5GC NRM + description: 3GPP TS 28.541 V16.6.0; 5G NRM, 5GC NRM url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ paths: {} components: @@ -240,7 +240,7 @@ components: fiveQIValues: type: array items: - type: integer + type: integer dscp: type: integer @@ -298,6 +298,143 @@ components: thresholdRtt: type: integer + QosData: + type: object + properties: + qosId: + type: string + fiveQIValue: + type: integer + maxbrUl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + maxbrDl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrUl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + gbrDl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/BitRateRm' + arp: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Arp' + qosNotificationControl: + type: boolean + reflectiveQos: + type: boolean + sharingKeyDl: + type: string + sharingKeyUl: + type: string + maxPacketLossRateDl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + maxPacketLossRateUl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + extMaxDataBurstVol: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm' + + QosDataList: + type: array + items: + $ref: '#/components/schemas/QosData' + + SteeringMode: + type: object + properties: + steerModeValue: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue' + active: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessType' + standby: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessTypeRm' + threeGLoad: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Uinteger' + prioAcc: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/AccessType' + + TrafficControlData: + type: object + properties: + tcId: + type: string + flowStatus: + $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus' + redirectInfo: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + addRedirectInfo: + type: array + items: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation' + minItems: 1 + muteNotif: + type: boolean + trafficSteeringPolIdDl: + type: string + nullable: true + trafficSteeringPolIdUl: + type: string + nullable: true + routeToLocs: + type: array + items: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/RouteToLocation' + traffCorreInd: + type: boolean + upPathChgEvent: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/UpPathChgEvent' + steerFun: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/SteeringFunctionality' + steerModeDl: + $ref: '#/components/schemas/SteeringMode' + steerModeUl: + $ref: '#/components/schemas/SteeringMode' + mulAccCtrl: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/MulticastAccessControl' + + TrafficControlDataList: + type: array + items: + $ref: '#/components/schemas/TrafficControlData' + + PccRule: + type: object + properties: + pccRuleId: + type: string + description: Univocally identifies the PCC rule within a PDU session. + flowInfoList: + type: array + items: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' + applicationId: + type: string + appDescriptor: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor' + contentVersion: + $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' + precedence: + $ref: '/rep/all/5G_APIs/raw/master/TS29571_CommonData.yaml#/components/schemas/Uinteger' + afSigProtocol: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol' + isAppRelocatable: + type: boolean + isUeAddrPreserved: + type: boolean + qosData: + type: array + items: + $ref: '#/components/schemas/QosDataList' + altQosParams: + type: array + items: + $ref: '#/components/schemas/QosDataList' + trafficControlData: + type: array + items: + $ref: '#/components/schemas/TrafficControlDataList' + conditionData: + $ref: '/rep/all/5G_APIs/raw/master/TS29512_Npcf_SMPolicyControl#/components/schemas/ConditionData' + tscaiInputDl: + $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + tscaiInputUl: + $ref: '/rep/all/5G_APIs/raw/master/TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' #-------- Definition of concrete IOCs -------------------------------------------- @@ -328,6 +465,8 @@ components: $ref: '#/components/schemas/AmfRegion-Multiple' Configurable5QISet: $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' ManagedElement-Single: allOf: @@ -378,7 +517,9 @@ components: $ref: '#/components/schemas/NefFunction-Multiple' Configurable5QISet: $ref: '#/components/schemas/Configurable5QISet-Multiple' - + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + AmfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' @@ -490,7 +631,9 @@ components: $ref: '#/components/schemas/ManagedNFProfile' commModelList: $ref: '#/components/schemas/CommModelList' - Configurable5QISetRef: + configurable5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' + dynamic5QISetRef: $ref: 'genericNRM.yaml#/components/schemas/Dn' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' @@ -514,6 +657,8 @@ components: $ref: '#/components/schemas/GtpUPathQoSMonitoringControl-Single' QFQoSMonitoringControl: $ref: '#/components/schemas/QFQoSMonitoringControl-Single' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' UpfFunction-Single: allOf: @@ -589,6 +734,10 @@ components: $ref: '#/components/schemas/ManagedNFProfile' commModelList: $ref: '#/components/schemas/CommModelList' + configurable5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -602,6 +751,9 @@ components: $ref: '#/components/schemas/EP_N16-Multiple' EP_Rx: $ref: '#/components/schemas/EP_Rx-Multiple' + PredefinedPccRuleSet: + $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + AusfFunction-Single: allOf: - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' @@ -987,6 +1139,8 @@ components: $ref: 'nrNrm.yaml#/components/schemas/LocalAddress' remoteAddress: $ref: 'nrNrm.yaml#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' EP_N4-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' @@ -1404,9 +1558,24 @@ components: - type: object properties: configurable5QIs: + type: array + items: + $ref: '#/components/schemas/FiveQICharacteristics' + + Dynamic5QISet-Single: + allOf: + - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + dynamic5QIs: type: array items: $ref: '#/components/schemas/FiveQICharacteristics' + GtpUPathQoSMonitoringControl-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' @@ -1481,6 +1650,19 @@ components: qFMeasurementPeriod: type: integer + PredefinedPccRuleSet-Single: + allOf: + - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + predefinedPccRules: + type: array + items: + $ref: '#/components/schemas/PccRule' #-------- Definition of JSON arrays for name-contained IOCs ---------------------- @@ -1715,6 +1897,10 @@ components: type: array items: $ref: '#/components/schemas/Configurable5QISet-Single' + Dynamic5QISet-Multiple: + type: array + items: + $ref: '#/components/schemas/Dynamic5QISet-Single' #------------ Definitions in TS 28.541 for TS 28.532 ----------------------------- @@ -1787,3 +1973,5 @@ components: - $ref: '#/components/schemas/EP_NLG-Single' - $ref: '#/components/schemas/Configurable5QISet-Single' - $ref: '#/components/schemas/FiveQiDscpMappingSet-Single' + - $ref: '#/components/schemas/PredefinedPccRuleSet-Single' + - $ref: '#/components/schemas/Dynamic5QISet-Single' diff --git a/OpenAPI/PerDataFileReportMnS.yaml b/OpenAPI/FileDataReportingMnS.yaml similarity index 89% rename from OpenAPI/PerDataFileReportMnS.yaml rename to OpenAPI/FileDataReportingMnS.yaml index dfacc14f8cbe8e923eda511cf2a0efd4bac081e9..3815e34901596b512b808b555d399fa983e7ee00 100644 --- a/OpenAPI/PerDataFileReportMnS.yaml +++ b/OpenAPI/FileDataReportingMnS.yaml @@ -1,41 +1,47 @@ openapi: 3.0.1 info: - title: TS 28.532 Performance data file reporting Service - version: 16.4.0 + title: TS 28.532 File data reporting Service + version: 16.5.0 description: >- - OAS 3.0.1 specification of the Performance data file reporting Management Service © 2020, + OAS 3.0.1 specification of the File data reporting Management Service © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services + description: 3GPP TS 28.532 V16.5.0; Generic management services url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/' servers: - - url: '{MnSRoot}/PerfDataFileReportMnS/v1640' + - url: '{MnSRoot}/FileDataReportingMnS/{MnSversion}' variables: MnSRoot: description: See subclause 4.4 of TS 32.158 - default: http://example.com/3GPPManagement + default: http://example.com/3GPPManagement + version: + description: Indicates the current version of the specification + default: 16.5.0 paths: /Files: get: summary: Read resources of information of available files - description: 'With HTTP GET, resources of information of available files are read. The resources to be read are identified with the path component (base resource) and the query component (managementDataType, beginTime and endTime) of the URI. The fields query component allows to select the resource properties to be returned.' + description: With HTTP GET, resources of information of available files are read. The resources to be read are identified with the path component (base resource) and the query component (managementDataType, beginTime and endTime) of the URI. The fields query component allows to select the resource properties to be returned. parameters: - name: managementDataType in: query description: This parameter identifies the type of management data that the file contains to select the resources from the collection resources identified with the path component of the URI. required: true - $ref: '#/components/schemas/managementDataType-Type' + schema: + $ref: '#/components/schemas/managementDataType-Type' - name: beginTime in: query description: This parameter identifies the time stamp no later than which the file became available to select the resources from the collection resources identified with the path component of the URI. required: true - $ref: '#/components/schemas/dateTime-Type' + schema: + $ref: '#/components/schemas/dateTime-Type' - name: endTime in: query description: This parameter identifies the time stamp no earlier than which the file became available to select the resources from the collection resources identified with the path component of the URI. required: true - $ref: '#/components/schemas/dateTime-Type' + schema: + $ref: '#/components/schemas/dateTime-Type' responses: '200': description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' @@ -195,7 +201,10 @@ components: managementDataType-Type: type: string enum: - - PM + - PERFORMANCE + - TRACE + - ANALYTICS + - PROPRIETARY header-Type: description: Header used in notifications as notification header type: object diff --git a/OpenAPI/PerfDataStreamingMnS.yaml b/OpenAPI/PerfDataStreamingMnS.yaml deleted file mode 100644 index e040e14c80af94fc200a0b40424c35ddc6aa29eb..0000000000000000000000000000000000000000 --- a/OpenAPI/PerfDataStreamingMnS.yaml +++ /dev/null @@ -1,363 +0,0 @@ -openapi: 3.0.1 -info: - title: TS 28.550 Performance Data Streaming Service - version: 16.3.0 - description: OAS 3.0.1 specification of the Performance Data Streaming Service -servers: - - url: 'http://{streamTarget}/PerfDataStreamMnS/v1630' - description: This URL is used for posting the set of information about streams supported on the connection between the producer and the consumer. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com - - url: 'wss://{streamTarget}/PerfDataStreamMnS/v1630/streamingConnection' - description: This URL is used for establishing the WebSocket connection for the performance data streaming service. - variables: - streamTarget: - description: 'The open API server of the performance data streaming service is located in the consumer side,and the “streamTarget” part corresponds to the streamTarget parameter provided in the createMeasurementJob operation (see clause 6.1.1.2) or the streamTarget attribute of the MOI of MeasurementControlor MeasurementReader, see 3GPP TS 28.622 [5]).' - default: example.com -paths: - /streamInfoList: - post: - summary: The set of information about the streams sent from the producer to the consumer - description: To send the streamInfoList from the producer to the consumer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-RequestType' - responses: - '201': - description: Success case ("201 Posted"). The streamInfoList is successfully posted. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - '202': - description: Partial success case ("202 Partially posted"). The representation of the posted resource on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoListPost-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - get: - summary: Read resources of stream information from the streaming consumer - description: 'With HTTP GET, resources of stream information are read. The resources to be read are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be returned.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '200': - description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.' - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - '202': - description: Partial success case ("202 Partially retrieved"). The representation of the retrieved resources on stream information. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update resources of stream information to the streaming consumer - description: 'With HTTP PATCH, resources of stream information are to be updated. The resources to be updated are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be updated.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources selected by the query parameter are updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - '202': - description: Partial success case ("202 Partially updated"). The representation of the updated resources on stream information - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The information of streams to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resources of stream information are to be deleted. The resources to be deleted are identified with the path component (base resource) and the query component (streamIdList) of the URI. The fields query component allows to select the resource properties to be deleted.' - parameters: - - name: streamIdList - in: query - description: This parameter identifies the list of streamId to select from the collection resources identified with the path component of the URI. - required: true - schema: - type: array - items: - type: integer - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - '/streamInfoList/{streamId}': - get: - summary: Read resource of the stream information from the streaming consumer - description: 'With HTTP GET, resource of stream information is read. The resource to be read is identified with the path component the URI.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be retrieved. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '200': - description: Success case ("200 OK"). The resource identified in the request for retrieval is returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/listOfStreamInfoRetrieval-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - patch: - summary: Update the resource of stream information to the streaming consumer - description: 'With HTTP PATCH, resource of stream information is to be updated. The resource to be updated is identified by the path component of the URI. ' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be updated. - required: true - schema: - $ref: '#/components/schemas/uri-Type' - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoToUpdate-RequestType' - responses: - '200': - description: Success case ("200 OK"). The resources identified by the path of the URI is updated and returned in the response message body. - content: - application/json: - schema: - $ref: '#/components/schemas/streamInfoUpdate-ResponseType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - delete: - summary: The stream information to be deleted by the producer to the consumer - description: 'With HTTP DELETE, resource of stream information identified by the path component of the URI is to be deleted.' - parameters: - - name: streamId - in: path - description: Identifies the stream for which the information is to be deleted - required: true - schema: - $ref: '#/components/schemas/uri-Type' - responses: - '204': - description: Success case ("204 No Content"). The stream information resource has been deleted. The response message body is absent. - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' - /streamConnection: - get: - summary: The connection for streaming from the producer to the consumer - description: To establish the WebSocket connection between the producer and the consumer. The HTTP version of this operation shall not be earlier than HTTP/1.1 - parameters: - - in: header - name: Upgrade - required: true - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - - in: header - name: Connection - required: true - schema: - $ref: '#/components/schemas/Connection-HeaderType' - - in: header - name: Sec-WebSocket-Key - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Key-HeaderType' - - in: header - name: Sec-WebSocket-Version - required: true - schema: - $ref: '#/components/schemas/Sec-WebSocket-Version-HeaderType' - responses: - '101': - description: Success case ("101 Switching Protocols "). The connection has been successfully switched to WebSocket. The response message body is absent. - headers: - Upgrade: - schema: - $ref: '#/components/schemas/Upgrade-HeaderType' - Connection: - schema: - $ref: '#/components/schemas/Connection-HeaderType' - Sec-WebSocket-Accept-HeaderType: - schema: - $ref: '#/components/schemas/Sec-WebSocket-Accept-HeaderType' - default: - description: Error case. - content: - application/json: - schema: - $ref: '#/components/schemas/error-ResponseType' -components: - schemas: - uri-Type: - type: string - streamInfoIn-Type: - type: object - properties: - streamId: - type: integer - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - streamInfoOut-Type: - type: object - properties: - streamId: - $ref: '#/components/schemas/uri-Type' - iOCInstance: - $ref: '#/components/schemas/uri-Type' - measTypes: - type: array - items: - type: string - error-ResponseType: - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - streamInfoListPost-RequestType: - type: object - properties: - streamInfoList: - type: array - items: - $ref: '#/components/schemas/streamInfoIn-Type' - streamInfoListPost-ResponseType: - type: object - properties: - streamInfoListPosted: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoRetrieval-ResponseType: - type: object - properties: - streamInfoOut: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoRetrieval-ResponseType: - type: object - properties: - listOfStreamInfoOut: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - streamInfoToUpdatePropertyType: - type: object - properties: - iOCInstance: - description: 'The updated measured object instance, empty value means no update.' - allOf: - - $ref: '#/components/schemas/uri-Type' - measTypes: - description: 'The updated list of measurement type, empty value means no update.' - type: array - items: - type: string - streamInfoToUpdate-RequestType: - type: object - properties: - streamInfoToUpdate: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - listOfStreamInfoToUpdate-RequestType: - type: object - properties: - listOfStreamInfoToUpdate: - type: array - items: - $ref: '#/components/schemas/streamInfoToUpdatePropertyType' - streamInfoUpdate-ResponseType: - type: object - properties: - streamInfoUpdated: - $ref: '#/components/schemas/streamInfoOut-Type' - listOfStreamInfoUpdate-ResponseType: - type: object - properties: - listOfStreamInfoUpdated: - type: array - items: - $ref: '#/components/schemas/streamInfoOut-Type' - Upgrade-HeaderType: - type: string - enum: - - websocket - Connection-HeaderType: - type: string - enum: - - Upgrade - Sec-WebSocket-Key-HeaderType: - type: string - Sec-WebSocket-Version-HeaderType: - type: string - Sec-WebSocket-Accept-HeaderType: - type: string diff --git a/OpenAPI/README.md b/OpenAPI/README.md index 9de0574637bc23f14368359c96aeddb1a91c2321..c08d627bffbe63c6f5311965a968fdf23a0a2519 100644 --- a/OpenAPI/README.md +++ b/OpenAPI/README.md @@ -45,10 +45,6 @@ The links below will open the Swagger Editor/UI and auto-load the OpenAPI YAML f ([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) ([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerMeasJobCtlMnS.yaml)) -* Performance Data File Reporting MnS (TS 28.532) -([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerDataFileReportMnS.yaml)) -([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerDataFileReportMnS.yaml)) - * Performance Threshold Monitoring MnS (TS 28.532) ([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/PerThresMonMnS.yaml)) ([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/PerThresMonMnS.yaml)) @@ -61,6 +57,10 @@ The links below will open the Swagger Editor/UI and auto-load the OpenAPI YAML f ([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/streamingDataMnS.yaml)) ([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/streamingDataMnS.yaml)) +* File Data Reporting MnS (TS 28.532) +([Editor](https://forge.3gpp.org/swagger/tools/loader.html?yaml=OpenAPI/FileDataReportMnS.yaml)) +([UI](https://forge.3gpp.org/swagger/tools/loader.html?action=ui&yaml=OpenAPI/FileDataReportMnS.yaml)) + ## Tools * [Frontend](https://forge.3gpp.org/swagger/tools/GitlabOpenAPIFrontend.htm) to invoke the Swagger Editor, Swagger UI, or to parse OpenAPI files with APIDevTools Swagger Parser/Validator, or to search for APIs referencing a data structure diff --git a/OpenAPI/comDefs.yaml b/OpenAPI/comDefs.yaml index 04ab6516149335f8742cb617e1acec43bbeac2a4..41508d4530cbbf49e6e16a5093484dab08b37ac0 100644 --- a/OpenAPI/comDefs.yaml +++ b/OpenAPI/comDefs.yaml @@ -1,30 +1,74 @@ openapi: 3.0.1 info: title: Common Type Definitions - version: 16.3.0 + version: 16.5.0 description: >- OAS 3.0.1 specification of common type definitions in the Generic NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.623 V16.3.0; Generic NRM, Common Type Definitions + description: 3GPP TS 28.623 V16.5.0; Generic NRM, Common Type Definitions url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ paths: {} components: schemas: Long: - type: string + type: number format: long Float: - type: string + type: number format: float DateTime: type: string format: date-Time Dn: type: string + DnList: + type: array + items: + $ref: '#/components/schemas/Dn' + Mcc: + type: string + pattern: '^[0-9]{3}$' + Mnc: + type: string + pattern: '^[0-9]{2,3}$' + Fqdn: + type: string Uri: type: string + Ipv4Addr: + type: string + pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' + example: '198.51.100.1' + Ipv6Addr: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' + example: '2001:db8:85a3::8a2e:370:7334' + Ipv6Prefix: + type: string + allOf: + - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' + - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' + example: '2001:db8:abcd:12::0/64' + AdministrativeState: + type: string + enum: + - LOCKED + - UNLOCKED + OperationalState: + type: string + enum: + - ENABLED + - DISABLED + UsageState: + type: string + enum: + - IDEL + - ACTIVE + - BUSY AttributeNameValuePairSet: type: object minProperties: 1 @@ -47,6 +91,11 @@ components: type: string NotificationId: type: integer + NotificationType: + oneOf: + - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationType' + - $ref: 'provMnS.yaml#/components/schemas/CmNotificationType' + # more to be added NotificationHeader: description: >- Header used for all notifications types @@ -63,10 +112,7 @@ components: notificationId: $ref: '#/components/schemas/NotificationId' notificationType: - oneOf: - - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added + $ref: '#/components/schemas/NotificationType' eventTime: $ref: '#/components/schemas/DateTime' systemDN: diff --git a/OpenAPI/faultMnS.yaml b/OpenAPI/faultMnS.yaml index 499123b903bd593face53928a3eb61b2f431afd4..36212aefc9bd68454c5242b800e77dc1d1dc8ed0 100644 --- a/OpenAPI/faultMnS.yaml +++ b/OpenAPI/faultMnS.yaml @@ -1,13 +1,13 @@ openapi: 3.0.1 info: title: Fault Supervision MnS - version: 16.4.0 + version: 16.5.0 description: >- OAS 3.0.1 definition of the Fault Supervision MnS © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.532 V16.4.0; Generic management services + description: 3GPP TS 28.532 V16.5.0; Generic management services url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ servers: - url: '{MnSRoot}/FaultSupervisionMnS/{version}' @@ -16,7 +16,7 @@ servers: description: See subclause 4.4.3 of TS 32.158 default: http://example.com/3GPPManagement version: - description: Versi on number of the OpenAPI definition + description: Version number of the OpenAPI definition default: XXX paths: /alarms: @@ -35,12 +35,12 @@ paths: in: query required: false schema: - $ref: '#/components/schemas/Dn' + $ref: 'comDefs.yaml#/components/schemas/Dn' - name: filter in: query required: false schema: - $ref: '#/components/schemas/Filter' + $ref: 'comDefs.yaml#/components/schemas/Filter' responses: '200': description: >- @@ -57,7 +57,7 @@ paths: - type: object properties: lastNotificationHeader: - $ref: '#/components/schemas/NotificationHeader' + $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - $ref: '#/components/schemas/AlarmRecord' - type: object properties: @@ -68,7 +68,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' patch: summary: 'Clear, acknowledge or unacknowledge multiple alarms' description: >- @@ -130,7 +130,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' /alarms/{alarmId}: patch: summary: 'Clear, acknowledge or unacknowledge a single alarm' @@ -163,7 +163,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' /alarms/{alarmId}/comments: post: summary: Add a comment to a single alarm @@ -203,7 +203,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' /subscriptions: post: @@ -238,7 +238,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' callbacks: notifyNewAlarm: '{request.body#/consumerReference}': @@ -262,7 +262,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyClearedAlarm: '{request.body#/consumerReference}': post: @@ -283,7 +283,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyChangedAlarm: '{request.body#/consumerReference}': post: @@ -304,7 +304,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyChangedAlarmGeneral: '{request.body#/consumerReference}': post: @@ -327,7 +327,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyCorrelatedNotificationChanged: '{request.body#/consumerReference}': post: @@ -348,7 +348,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyAckStateChanged: '{request.body#/consumerReference}': post: @@ -369,7 +369,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyComments: '{request.body#/consumerReference}': post: @@ -390,7 +390,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyPotentialFaultyAlarmList: '{request.body#/consumerReference}': post: @@ -411,7 +411,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyAlarmListRebuilt: '{request.body#/consumerReference}': post: @@ -432,7 +432,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' /subscriptions/{subscriptionId}: delete: summary: Delete a subscription @@ -458,91 +458,10 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' components: schemas: - - #---- Definitions to be moved to comDefs.yaml --------------------------------------# - - Long: - type: string - format: long - Float: - type: string - format: float - DateTime: - type: string - format: date-Time - - Dn: - type: string - Uri: - type: string - - AttributeNameValuePairSet: - type: object - minProperties: 1 - AttributeValueChangeSet: - description: >- - The key in this map is the attribute name. The value of each key is an array. - When only one item is present in the array, it carries the new attribute - value. If two items are present, then the first item carries the old value - and the second item the new value. The items can be of any type including null. - type: object - additionalProperties: - type: array - minItems: 1 - maxItems: 2 - items: - nullable: true - - Filter: - type: string - SystemDN: - type: string - - NotificationId: - type: integer - NotificationHeader: - description: >- - Header used for all notification types - type: object - required: - - href - - notificationId - - notificationType - - eventTime - - systemDN - properties: - uri: - $ref: '#/components/schemas/Uri' - notificationId: - $ref: '#/components/schemas/NotificationId' - notificationType: - oneOf: - - $ref: '#/components/schemas/AlarmNotificationTypes' - #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes' - #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes' - # more to be added - eventTime: - $ref: '#/components/schemas/DateTime' - systemDN: - $ref: '#/components/schemas/SystemDN' - - ErrorResponse: - description: >- - Default schema for the response message body in case the request is not - successful. - type: object - properties: - error: - type: object - properties: - errorInfo: - type: string - - #---- End of definitions to be moved to comDefs.yaml -------------------------------# #---- Definition of AlarmRecord ----------------------------------------------------# @@ -608,9 +527,9 @@ components: high: oneOf: - type: integer - - $ref: '#/components/schemas/Float' + - $ref: 'comDefs.yaml#/components/schemas/Float' low: - $ref: '#/components/schemas/Float' + $ref: 'comDefs.yaml#/components/schemas/Float' ThresholdLevelInd: type: object required: @@ -631,11 +550,11 @@ components: observedValue: oneOf: - type: integer - - $ref: '#/components/schemas/Float' + - $ref: 'comDefs.yaml#/components/schemas/Float' thresholdLevelInd: $ref: '#/components/schemas/ThresholdLevelInd' armTime: - $ref: '#/components/schemas/DateTime' + $ref: 'comDefs.yaml#/components/schemas/DateTime' CorrelatedNotification: type: object required: @@ -643,11 +562,11 @@ components: - notificationId properties: sourceObjectInstance: - $ref: '#/components/schemas/Dn' + $ref: 'comDefs.yaml#/components/schemas/Dn' notificationIds: type: array items: - $ref: '#/components/schemas/NotificationId' + $ref: 'comDefs.yaml#/components/schemas/NotificationId' CorrelatedNotifications: type: array items: @@ -667,15 +586,15 @@ components: # alarmId: # $ref: '#/components/schemas/AlarmId' objectInstance: - $ref: '#/components/schemas/Dn' + $ref: 'comDefs.yaml#/components/schemas/Dn' notificationId: - $ref: '#/components/schemas/NotificationId' + $ref: 'comDefs.yaml#/components/schemas/NotificationId' alarmRaisedTime: - $ref: '#/components/schemas/DateTime' + $ref: 'comDefs.yaml#/components/schemas/DateTime' alarmChangedTime: - $ref: '#/components/schemas/DateTime' + $ref: 'comDefs.yaml#/components/schemas/DateTime' alarmClearedTime: - $ref: '#/components/schemas/DateTime' + $ref: 'comDefs.yaml#/components/schemas/DateTime' alarmType: $ref: '#/components/schemas/AlarmType' probableCause: @@ -687,7 +606,7 @@ components: backedUpStatus: type: boolean backUpObject: - $ref: '#/components/schemas/Dn' + $ref: 'comDefs.yaml#/components/schemas/Dn' trendIndication: $ref: '#/components/schemas/TrendIndication' thresholdinfo: @@ -695,21 +614,21 @@ components: correlatedNotifications: $ref: '#/components/schemas/CorrelatedNotifications' stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeValueChangeSet' monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' proposedRepairActions: type: string additionalText: type: string additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' rootCauseIndicator: type: boolean ackTime: - $ref: '#/components/schemas/DateTime' + $ref: 'comDefs.yaml#/components/schemas/DateTime' ackUserId: type: string ackSystemId: @@ -730,7 +649,7 @@ components: #---- Definition of alarm notifications --------------------------------------------# - AlarmNotificationTypes: + AlarmNotificationType: type: string enum: - notifyNewAlarm @@ -750,7 +669,7 @@ components: NotifyNewAlarm: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -771,7 +690,7 @@ components: backedUpStatus: type: boolean backUpObject: - $ref: '#/components/schemas/Dn' + $ref: 'comDefs.yaml#/components/schemas/Dn' trendIndication: $ref: '#/components/schemas/TrendIndication' thresholdInfo: @@ -779,20 +698,20 @@ components: correlatedNotifications: $ref: '#/components/schemas/CorrelatedNotifications' stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeValueChangeSet' monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' proposedRepairActions: type: string additionalText: type: string additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' rootCauseIndicator: type: boolean NotifyNewSecAlarm: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -816,7 +735,7 @@ components: additionalText: type: string additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' rootCauseIndicator: type: boolean serviceUser: @@ -827,7 +746,7 @@ components: type: string NotifyClearedAlarm: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -851,7 +770,7 @@ components: type: string NotifyChangedAlarm: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -869,7 +788,7 @@ components: $ref: '#/components/schemas/PerceivedSeverity' NotifyChangedAlarmGeneral: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -893,28 +812,28 @@ components: backedUpStatus: type: boolean backUpObject: - $ref: '#/components/schemas/Dn' + $ref: 'comDefs.yaml#/components/schemas/Dn' trendIndication: $ref: '#/components/schemas/TrendIndication' thresholdInfo: $ref: '#/components/schemas/ThresholdInfo' stateChangeDefinition: - $ref: '#/components/schemas/AttributeValueChangeSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeValueChangeSet' monitoredAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' proposedRepairActions: type: string additionalText: type: string additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' rootCauseIndicator: type: boolean changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' NotifyChangedSecAlarmGeneral: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -939,7 +858,7 @@ components: additionalText: type: string additionalInformation: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' rootCauseIndicator: type: boolean serviceUser: @@ -949,10 +868,10 @@ components: securityAlarmDetector: type: string changedAlarmAttributes: - $ref: '#/components/schemas/AttributeNameValuePairSet' + $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' NotifyCorrelatedNotificationChanged: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -966,7 +885,7 @@ components: type: boolean NotifyAckStateChanged: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -992,7 +911,7 @@ components: type: string NotifyComments: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - alarmId @@ -1013,7 +932,7 @@ components: $ref: '#/components/schemas/Comments' NotifyPotentialFaultyAlarmList: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - reason @@ -1022,7 +941,7 @@ components: type: string NotifyAlarmListRebuilt: allOf: - - $ref: '#/components/schemas/NotificationHeader' + - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object required: - reason @@ -1119,7 +1038,7 @@ components: type: object properties: commentTime: - $ref: '#/components/schemas/DateTime' + $ref: 'comDefs.yaml#/components/schemas/DateTime' commentUserId: type: string commentSystemId: @@ -1137,8 +1056,8 @@ components: type: object properties: consumerReference: - $ref: '#/components/schemas/Uri' + $ref: 'comDefs.yaml#/components/schemas/Uri' timeTick: - $ref: '#/components/schemas/Long' + $ref: 'comDefs.yaml#/components/schemas/Long' filter: - $ref: '#/components/schemas/Filter' + $ref: 'comDefs.yaml#/components/schemas/Filter' diff --git a/OpenAPI/genericNrm.yaml b/OpenAPI/genericNrm.yaml index e3b71407f4ee0e5483d6bbcec7a7b4c984f52348..21b9765792c7d71c4cbd8835205fa7ced9336287 100644 --- a/OpenAPI/genericNrm.yaml +++ b/OpenAPI/genericNrm.yaml @@ -1,13 +1,13 @@ openapi: 3.0.1 info: title: Generic NRM - version: 16.4.0 + version: 16.5.0 description: >- OAS 3.0.1 specification of the Generic NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.623 V16.4.0; Generic NRM + description: 3GPP TS 28.623 V16.5.0; Generic NRM url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ paths: {} components: @@ -15,33 +15,36 @@ components: #-------- Definition of types----------------------------------------------------- - DateTime: - type: string - format: date-time Dn: + # To be removed after approval of same definition in comDefs.yaml type: string - maxLength: 400 DnList: + # To be removed after approval of same definition in comDefs.yaml type: array items: $ref: '#/components/schemas/Dn' Mcc: + # To be removed after approval of same definition in comDefs.yaml type: string pattern: '^[0-9]{3}$' Mnc: + # To be removed after approval of same definition in comDefs.yaml type: string pattern: '^[0-9]{2,3}$' AdministrativeState: + # To be removed after approval of same definition in comDefs.yaml type: string enum: - LOCKED - UNLOCKED OperationalState: + # To be removed after approval of same definition in comDefs.yaml type: string enum: - ENABLED - DISABLED UsageState: + # To be removed after approval of same definition in comDefs.yaml type: string enum: - IDEL @@ -108,40 +111,28 @@ components: type: array items: $ref: '#/components/schemas/PeeParameter' - MonitoringGPList: - type: array - items: - type: integer - ThresholdInfoList: - type: array - items: - $ref: '#/components/schemas/ThresholdInfo' ThresholdInfo: - type: object - properties: - measurementType: - type: string - direction: - $ref: '#/components/schemas/Direction' - thresholdPack: - $ref: '#/components/schemas/ThresholdPack' - Direction: - enum: - - Increasing - - Decreasing - ThresholdPack: - type: array - items: - $ref: '#/components/schemas/ThresholdPackElement' - ThresholdPackElement: type: object properties: thresholdLevel: type: integer + thresholdDirection: + type: string + enum: + - UP + - DOWN + - UP_AND_DOWN thresholdValue: - type: number + oneOf: + - type: integer + - $ref: 'comDefs.yaml#/components/schemas/Float' hysteresis: - type: number + oneOf: + - type: integer + minimum: 0 + - type: number + format: float + minimum: 0 Operation: type: object properties: @@ -211,32 +202,18 @@ components: type: string pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' example: '198.51.100.1' - Ipv4AddrRm: - type: string - pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$' - example: '198.51.100.1' - nullable: true Ipv6Addr: type: string allOf: - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' example: '2001:db8:85a3::8a2e:370:7334' - Ipv6AddrRm: - type: string - allOf: - - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$' - - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$' - example: '2001:db8:85a3::8a2e:370:7334' - nullable: true Ipv6Prefix: type: string allOf: - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$' - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$' example: '2001:db8:abcd:12::0/64' - Uri: - type: string TransportProtocol: anyOf: - type: string @@ -263,6 +240,11 @@ components: - FILE_BASED_LOC_SET_BY_PRODUCER - FILE_BASED_LOC_SET_BY_CONSUMER - STREAM_BASED + monitorGranularityPeriods: + type: array + items: + type: integer + minimum: 1 ReportingCtrl: oneOf: - type: object @@ -274,11 +256,11 @@ components: fileReportingPeriod: type: integer fileLocation: - $ref: '#/components/schemas/Uri' + $ref: 'comDefs.yaml#/components/schemas/Uri' - type: object properties: streamTarget: - $ref: '#/components/schemas/Uri' + $ref: 'comDefs.yaml/components/schemas/Uri' Scope: type: object properties: @@ -292,11 +274,13 @@ components: scopeLevel: type: integer NotificationType: + # To be removed after approval of same definition in comDefs.yaml type: string enum: - notifyMOICreation - notifyMOIDeletion - notifyMOIAttributeValueChanges + - notifyMOIChanges - notifyEvent - notifyNewAlarm - notifyChangedAlarm @@ -1198,8 +1182,6 @@ components: $ref: '#/components/schemas/PerfMetricJob-Multiple' ThresholdMonitor: $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' NtfSubscriptionControl: $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' TraceJob: @@ -1213,8 +1195,6 @@ components: $ref: '#/components/schemas/PerfMetricJob-Multiple' ThresholdMonitor: $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' NtfSubscriptionControl: $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' TraceJob: @@ -1331,12 +1311,10 @@ components: ManagedFunction-ncO: type: object properties: - MeasurementControl: - $ref: '#/components/schemas/MeasurementControl-Multiple' + PerfMetricJob: + $ref: '#/components/schemas/PerfMetricJob-Multiple' ThresholdMonitor: $ref: '#/components/schemas/ThresholdMonitor-Multiple' - ThresholdMonitoringCapability: - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' ManagedNFService: $ref: '#/components/schemas/ManagedNFService-Multiple' TraceJob: @@ -1362,7 +1340,7 @@ components: $ref: '#/components/schemas/VsDataContainer-Multiple' ManagedNFService-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: @@ -1386,7 +1364,7 @@ components: $ref: '#/components/schemas/RegistrationState' ManagementNode-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: @@ -1406,7 +1384,7 @@ components: type: string MeContext-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: @@ -1416,7 +1394,7 @@ components: type: string PerfMetricJob-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: @@ -1441,44 +1419,43 @@ components: $ref: '#/components/schemas/DnList' reportingCtrl: $ref: '#/components/schemas/ReportingCtrl' - ThresholdMonitoringCapability-Single: - allOf: - - $ref: '#/components/schemas/Top-Attr' - - type: object - properties: - attributes: - type: object - properties: - supportedMonitoringGPs: - $ref: '#/components/schemas/MonitoringGPList' ThresholdMonitor-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: type: object properties: + administrativeState: + $ref: '#/components/schemas/AdministrativeState' + operationalState: + $ref: '#/components/schemas/OperationalState' + performanceMetrics: + type: array + items: + type: string thresholdInfoList: - $ref: '#/components/schemas/ThresholdInfoList' - monitoringGP: + type: array + items: + $ref: '#/components/schemas/ThresholdInfo' + monitorGranularityPeriod: type: integer - monitoringNotifTarget: - type: string - monitoredIOCName: - type: string - monitoredObjectDNs: + minimum: 1 + objectInstances: + $ref: '#/components/schemas/DnList' + rootObjectInstances: $ref: '#/components/schemas/DnList' NtfSubscriptionControl-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: type: object properties: notificationRecipientAddress: - $ref: '#/components/schemas/Uri' + $ref: 'comDefs.yaml#/components/schemas/Uri' notificationTypes: $ref: '#/components/schemas/NotificationTypes' scope: @@ -1489,7 +1466,7 @@ components: $ref: '#/components/schemas/HeartbeatControl-Single' HeartbeatControl-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: @@ -1501,7 +1478,7 @@ components: type: boolean TraceJob-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: @@ -1509,7 +1486,7 @@ components: AlarmList-Single: allOf: - - $ref: '#/components/schemas/Top-Attr' + - $ref: '#/components/schemas/Top' - type: object properties: attributes: @@ -1522,7 +1499,7 @@ components: numOfAlarmRecords: type: integer lastModification: - $ref: '#/components/schemas/DateTime' + $ref: 'comDefs.yaml/components/schemas/DateTime' alarmRecords: description: >- This resource represents a map of alarm records. @@ -1531,7 +1508,7 @@ components: additionalProperties: $ref: 'faultMnS.yaml#/components/schemas/AlarmRecord' -#-------- Definition of JSON arrays for name-contained IOCs ---------------------- +#-------- Definition of YAML arrays for name-contained IOCs ---------------------- VsDataContainer-Multiple: type: array @@ -1552,7 +1529,7 @@ components: PerfMetricJob-Multiple: type: array items: - $ref: '#/components/schemas/MetricProdJob-Single' + $ref: '#/components/schemas/PerfMetricJob-Single' ThresholdMonitor-Multiple: type: array items: @@ -1579,8 +1556,6 @@ components: - $ref: '#/components/schemas/ManagedNFService-Single' - $ref: '#/components/schemas/PerfMetricJob-Single' - - - $ref: '#/components/schemas/ThresholdMonitoringCapability-Single' - $ref: '#/components/schemas/ThresholdMonitor-Single' - $ref: '#/components/schemas/NtfSubscriptionControl-Single' diff --git a/OpenAPI/nrNrm.yaml b/OpenAPI/nrNrm.yaml index 2061e69407216dd5b9a273afae6c8fb59128322d..0529a41ad430645fb333a85700fc9784761be528 100644 --- a/OpenAPI/nrNrm.yaml +++ b/OpenAPI/nrNrm.yaml @@ -1,13 +1,13 @@ openapi: 3.0.1 info: title: NR NRM - version: 16.5.0 + version: 16.6.0 description: >- OAS 3.0.1 specification of the NR NRM © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.541 V16.5.0; 5G NRM, NR NRM + description: 3GPP TS 28.541 V16.6.0; 5G NRM, NR NRM url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/ paths: {} components: @@ -73,16 +73,22 @@ components: type: array items: $ref: '#/components/schemas/PlmnInfo' + GGnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' + GEnbId: + type: string + pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' GGnbIdList: type: array - items: string - pattern: '^[0-9]{3}[0-9]{2,3}-(22|23|24|25|26|27|28|29|30|31|32)-[0-9]{1,10}' + items: + $ref: '#/components/schemas/GGnbId' GEnbIdList: type: array - items: string - pattern: '^[0-9]{3}[0-9]{2,3}-(18|20|21|22)-[0-9]{1,7}' + items: + $ref: '#/components/schemas/GEnbId' NrPci: type: integer @@ -262,8 +268,7 @@ components: type: array items: $ref: '#/components/schemas/RrmPolicyMember' - - LocalAddress: + AddressWithVlan: type: object properties: ipv4Address: @@ -274,6 +279,11 @@ components: type: integer minimum: 0 maximum: 4096 + LocalAddress: + type: object + properties: + addressWithVlan: + $ref: '#/components/schemas/AddressWithVlan' port: type: integer minimum: 0 @@ -541,6 +551,21 @@ components: type: array items: $ref: '#/components/schemas/RimRSReportInfo' + TceMappingInfo: + type: object + properties: + TceIPAddress: + oneOf: + - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr' + - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr' + TceID: + type: integer + PlmnTarget: + $ref: '#/components/schemas/PlmnId' + TceMappingInfoList: + type: array + items: + $ref: '#/components/schemas/TceMappingInfo' #-------- Definition of abstract IOCs -------------------------------------------- @@ -593,6 +618,9 @@ components: $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' RimRSGlobal: $ref: '#/components/schemas/RimRSGlobal-Single' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + ManagedElement-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' @@ -623,6 +651,8 @@ components: $ref: '#/components/schemas/CESManagementFunction-Single' Configurable5QISet: $ref: '5gcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '5gcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' GnbDuFunction-Single: allOf: @@ -679,6 +709,8 @@ components: $ref: '#/components/schemas/PlmnInfoList' configurable5QISetRef: $ref: 'genericNRM.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -721,15 +753,19 @@ components: x2WhiteList: $ref: '#/components/schemas/GGnbIdList' xnWhiteList: - $ref: '#/components/schemas/GGnbIdList ' + $ref: '#/components/schemas/GGnbIdList' xnHOBlackList: - $ref: '#/components/schemas/GGnbIdList ' + $ref: '#/components/schemas/GGnbIdList' x2HOBlackList: $ref: '#/components/schemas/GEnbIdList' mappingSetIDBackhaulAddress: $ref: '#/components/schemas/MappingSetIDBackhaulAddress' + tceMappingInfoList: + $ref: '#/components/schemas/TceMappingInfoList' configurable5QISetRef: $ref: 'genericNRM.yaml#/components/schemas/Dn' + dynamic5QISetRef: + $ref: 'genericNRM.yaml#/components/schemas/Dn' - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -874,29 +910,34 @@ components: - type: object properties: attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: - absoluteFrequencySSB: - type: integer - minimum: 0 - maximum: 3279165 - ssbSubCarrierSpacing: - $ref: '#/components/schemas/SsbSubCarrierSpacing' - multiFrequencyBandListNR: - type: integer - minimum: 1 - maximum: 256 - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' + type: object + properties: + absoluteFrequencySSB: + type: integer + minimum: 0 + maximum: 3279165 + ssbSubCarrierSpacing: + $ref: '#/components/schemas/SsbSubCarrierSpacing' + multiFrequencyBandListNR: + type: integer + minimum: 1 + maximum: 256 EUtranFrequency-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' - type: object properties: attributes: - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' + type: object + properties: + earfcnDL: + type: integer + minimum: 0 + maximum: 262143 + multiBandInfoListEutra: + type: integer + minimum: 1 + maximum: 256 NrSectorCarrier-Single: allOf: @@ -1123,13 +1164,63 @@ components: - type: object properties: attributes: - allOf: - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-Attr' - - type: object - properties: + type: object + properties: + cellIndividualOffset: + $ref: '#/components/schemas/CellIndividualOffset' + blackListEntry: + type: array + items: + type: integer + minimum: 0 + maximum: 1007 + blackListEntryIdleMode: + type: integer + cellReselectionPriority: + type: integer + cellReselectionSubPriority: + type: number + minimum: 0.2 + maximum: 0.8 + multipleOf: 0.2 + pMax: + type: integer + minimum: -30 + maximum: 33 + qOffsetFreq: + $ref: '#/components/schemas/QOffsetFreq' + qQualMin: + type: number + qRxLevMin: + type: integer + minimum: -140 + maximum: -44 + threshXHighP: + type: integer + minimum: 0 + maximum: 62 + threshXHighQ: + type: integer + minimum: 0 + maximum: 31 + threshXLowP: + type: integer + minimum: 0 + maximum: 62 + threshXLowQ: + type: integer + minimum: 0 + maximum: 31 + tReselectionEutran: + type: integer + minimum: 0 + maximum: 7 + tReselectionNRSfHigh: + $ref: '#/components/schemas/TReselectionNRSf' + tReselectionNRSfMedium: + $ref: '#/components/schemas/TReselectionNRSf' eUTranFrequencyRef: $ref: 'genericNRM.yaml#/components/schemas/Dn' - - $ref: 'genericNRM.yaml#/components/schemas/ManagedFunction-ncO' DANRManagementFunction-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' @@ -1538,6 +1629,8 @@ components: $ref: '#/components/schemas/LocalAddress' remoteAddress: $ref: '#/components/schemas/RemoteAddress' + epTransportRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' EP_X2U-Single: allOf: - $ref: 'genericNRM.yaml#/components/schemas/Top-Attr' diff --git a/OpenAPI/sliceNrm.yaml b/OpenAPI/sliceNrm.yaml index 03aec3d79aba5de6411d6822c80891a63ea3a744..6f7e6b6f64ba7eec19ef8db55f4bbf102c908783 100644 --- a/OpenAPI/sliceNrm.yaml +++ b/OpenAPI/sliceNrm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.1 info: title: Slice NRM - version: 16.4.0 + version: 16.5.0 description: >- OAS 3.0.1 specification of the Slice NRM @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). @@ -30,6 +30,48 @@ components: enum: - SHARED - NON-SHARED + PerfReqEmbb: + type: object + properties: + expDataRateDL: + type: number + expDataRateUL: + type: number + areaTrafficCapDL: + type: number + areaTrafficCapUL: + type: number + userDensity: + type: number + activityFactor: + type: number + PerfReqEmbbList: + type: array + items: + $ref: '#/components/schemas/PerfReqEmbb' + PerfReqUrllc: + type: object + properties: + cSAvailabilityTarget: + type: number + cSReliabilityMeanTime: + type: string + expDataRate: + type: number + msgSizeByte: + type: string + transferIntervalTarget: + type: string + survivalTime: + type: string + PerfReqUrllcList: + type: array + items: + $ref: '#/components/schemas/PerfReqUrllc' + PerfReq: + oneOf: + - $ref: '#/components/schemas/PerfReqEmbbList' + - $ref: '#/components/schemas/PerfReqUrllcList' Category: type: string enum: @@ -133,13 +175,6 @@ components: $ref: '#/components/schemas/ServAttrCom' kPIList: type: string - SupportedAccessTech: - type: object - properties: - servAttrCom: - $ref: '#/components/schemas/ServAttrCom' - accTechList: - type: integer UserMgmtOpen: type: object properties: @@ -207,8 +242,6 @@ components: $ref: '#/components/schemas/MaxNumberofConns' kPIMonitoring: $ref: '#/components/schemas/KPIMonitoring' - supportedAccessTech: - $ref: '#/components/schemas/SupportedAccessTech' userMgmtOpen: $ref: '#/components/schemas/UserMgmtOpen' v2XModels: @@ -236,6 +269,8 @@ components: $ref: 'nrNrm.yaml#/components/schemas/SnssaiList' plmnIdList: $ref: 'nrNrm.yaml#/components/schemas/PlmnIdList' + perfReq: + $ref: '#/components/schemas/PerfReq' maxNumberofUEs: type: number coverageAreaTAList: @@ -314,6 +349,8 @@ components: type: string qosProfile: type: string + epApplicationRefs: + $ref: 'genericNrm.yaml#/components/schemas/DnList' EP_Transport-Multiple: type: array @@ -326,3 +363,4 @@ components: oneOf: - $ref: '#/components/schemas/NetworkSlice' - $ref: '#/components/schemas/NetworkSliceSubnet' + - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/OpenAPI/streamingDataMnS.yaml b/OpenAPI/streamingDataMnS.yaml index ab7f71d4a8f816fd13c14397c5e31270903613dd..f10a6c247c7f21c1e500b11372d9f53157c6fd63 100644 --- a/OpenAPI/streamingDataMnS.yaml +++ b/OpenAPI/streamingDataMnS.yaml @@ -1,24 +1,17 @@ openapi: 3.0.1 info: title: TS 28.532 Streaming data reporting service - version: 16.4.0 + version: 16.5.0 description: OAS 3.0.1 specification for the Streaming data reporting service (Streaming MnS) servers: - - url: '{protocol}://{root}/StreamingDataReportingMnS/{version}' + - url: '{MnSRoot}/StreamingDataReportingMnS/{version}' variables: - protocol: - description: Protocol used - enum: - - http - - https - - wss - default: https - root: - description: Indicates the host name and optional port, and an optional sequence of path segments that together represent a prefix path. - default: example.com + MnSRoot: + description: See subclause 4.4 of TS 32.158. + default: https://example.com/3GPPManagement version: description: Indicates the current version of the specification - default: 16.4.0 + default: 16.5.0 paths: '/connections': post: