diff --git a/TS26510_CommonData.yaml b/TS26510_CommonData.yaml index 6c663952575e2ea606a0f3ee1a437b16ac390c2d..15942bee150d72bfa1b112f98ed4b000b26d9287 100755 --- a/TS26510_CommonData.yaml +++ b/TS26510_CommonData.yaml @@ -75,6 +75,8 @@ components: required: - direction properties: + direction: + type: string sourceAddress: $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr' destinationAddress: @@ -91,23 +93,25 @@ components: $ref: '#/components/schemas/Uint20' securityParametersIndex: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' - direction: - type: string - ServiceDataFlowDescription: + ApplicationFlowDescription: type: object required: - - sdfMethod + - filterMethod oneOf: - - required: [flowDescription] + - required: [packetFilter] - required: [domainName] properties: - sdfMethod: + filterMethod: $ref: '#/components/schemas/SdfMethod' - flowDescription: + packetFilter: $ref: '#/components/schemas/IpPacketFilterSet' domainName: type: string + mediaType: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/MediaType' + mediaTransportParameters: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' M1UnidirectionalQoSSpecification: type: object @@ -122,20 +126,30 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' defaultPacketLossRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + pduSetQosLimits: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' M1QoSSpecification: type: object + required: + - componentReference anyOf: - required: [qosReference] - required: [downlink] - required: [uplink] properties: + componentReference: + type: string + minLength: 1 qosReference: type: string - downlink: + downlinkQoSSpecification: $ref: '#/components/schemas/M1UnidirectionalQoSSpecification' - uplink: + uplinkQoSSpecification: $ref: '#/components/schemas/M1UnidirectionalQoSSpecification' + pduSetMarking: + type: boolean + default: false M5BitRateSpecification: type: object @@ -165,6 +179,10 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' desiredPacketLossRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + desiredDownlinkPduSetQosParameters: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' + desiredUplinkPduSetQosParameters: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' ChargingSpecification: type: object @@ -200,21 +218,6 @@ components: reason: type: string - EndpointAddress: - type: object - required: - - portNumber - properties: - hostname: - type: string - minLength: 1 - ipv4Addr: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr' - ipv6Addr: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Addr' - portNumber: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint16' - EdgeProcessingEligibilityCriteria: type: object required: @@ -226,7 +229,7 @@ components: serviceDataFlowDescriptions: type: array items: - $ref: '#/components/schemas/ServiceDataFlowDescription' + $ref: '#/components/schemas/ApplicationFlowDescription' ueLocations: type: array items: @@ -238,6 +241,21 @@ components: appRequest: type: boolean + EndpointAddress: + type: object + required: + - domainName + - portNumber + properties: + domainName: + type: string + minLength: 1 + portNumbers: + type: array + minItems: 1 + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint16' + UnidirectionalQoSSpecification: type: object description: A specification for network Quality of Service in either the downlink or uplink direction. @@ -353,6 +371,7 @@ components: enum: - MS_DOWNLINK - MS_UPLINK + - RTC - type: string description: > This string provides forward-compatibility with future diff --git a/TS26510_Maf_Provisioning_ConsumptionReporting.yaml b/TS26510_Maf_Provisioning_ConsumptionReporting.yaml old mode 100644 new mode 100755 diff --git a/TS26510_Maf_Provisioning_PolicyTemplates.yaml b/TS26510_Maf_Provisioning_PolicyTemplates.yaml index 0b8e053a3c10cf278f6aa871febb130d25c6235e..ea11b65c6383853b7ea40e2f0399ff6bb5aff2cd 100644 --- a/TS26510_Maf_Provisioning_PolicyTemplates.yaml +++ b/TS26510_Maf_Provisioning_PolicyTemplates.yaml @@ -290,8 +290,11 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' dnn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' - qoSSpecification: - $ref: 'TS26510_CommonData.yaml#/components/schemas/M1QoSSpecification' + qoSSpecifications: + type: array + minItems: 1 + items: + $ref: 'TS26510_CommonData.yaml#/components/schemas/M1QoSSpecification' chargingSpecification: $ref: 'TS26510_CommonData.yaml#/components/schemas/ChargingSpecification' bdtPolicyId: diff --git a/TS26510_Maf_Provisioning_RealTimeCommunication.yaml b/TS26510_Maf_Provisioning_RealTimeCommunication.yaml new file mode 100755 index 0000000000000000000000000000000000000000..ab283143b42d4faeb55196a03f3260e30887e10f --- /dev/null +++ b/TS26510_Maf_Provisioning_RealTimeCommunication.yaml @@ -0,0 +1,282 @@ +openapi: 3.0.0 +info: + title: Maf_Provisioning_RealTimeCommunication + version: 1.0.0 + description: | + Media Delivery: Real-Time media Communication Provisioning API + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +tags: + - name: Maf_Provisioning_RealTimeCommunication + description: 'Media Delivery: Real-Time media Communication Provisioning API' + +externalDocs: + description: 'TS 26.510 V18.0.0; Media Delivery; Interactions and APIs for media session handling' + url: 'https://www.3gpp.org/ftp/Specs/archive/26_series/26.510/' + +servers: + - url: '{apiRoot}/3gpp-maf-provisioning/v1' + variables: + apiRoot: + default: https://example.com + description: See 3GPP TS 29.512 clause 6.1. + +security: + - {} + - OAuth2ClientCredentials: [] + +paths: + /provisioning-sessions/{provisioningSessionId}/rtc-configuration: + parameters: + - name: provisioningSessionId + in: path + required: true + schema: + $ref: 'TS26510_CommonData.yaml#/components/schemas/ResourceId' + description: 'The resource identifier of an existing Provisioning Session.' + post: + operationId: activateRealTimeCommunication + summary: 'Activate the Real-Time media Communication procedure for the specified Provisioning Session by providing the Real-Time media Communication Configuration' + requestBody: + description: 'A JSON representation of a Real-Time media Communication Configuration' + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/RTCConfiguration' + responses: + '201': # OK + description: 'Real-Time media Communication Configuration Created' + headers: + Location: + description: 'URL of the newly created Real-Time media Communication Configuration (same as request URL).' + required: true + schema: + $ref: 'TS26510_CommonData.yaml#/components/schemas/AbsoluteUrl' + content: + application/json: + schema: + $ref: '#/components/schemas/RTCConfiguration' + '400': # Bad Request: The syntax of the HTTP request is malformed in a way not covered by one of the following more specific client errors + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': # Unauthorized + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '411': # Length Required + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': # Payload Too Large + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '414': # URI Too Long + $ref: 'TS29571_CommonData.yaml#/components/responses/414' + '415': # Unsupported Media Type + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '500': # Internal Server Error + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': # Service Unavailable + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + get: + operationId: retrieveRTCConfiguration + summary: 'Retrieve the Real-Time media Communication Configuration of the specified Provisioning Session' + responses: + '200': # OK + description: 'Success' + content: + application/json: + schema: + $ref: '#/components/schemas/RTCConfiguration' + '400': # Bad Request: The syntax of the HTTP request is malformed in a way not covered by one of the following more specific client errors + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': # Unauthorized + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '404': # Not Found + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '410': # Gone: Resource no longer exists + $ref: 'TS29571_CommonData.yaml#/components/responses/410' + '413': # Payload Too Large: No request body allowed for this operation + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '414': # URI too long + $ref: 'TS29571_CommonData.yaml#/components/responses/414' + '500': # Internal Server Error + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': # Service Unavailable + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + put: + operationId: updateRTCConfiguration + summary: 'Update the Real-Time media Communication Configuration for the specified Provisioning Session' + requestBody: + description: 'A JSON representation of a Real-Time media Communication Configuration' + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/RTCConfiguration' + responses: + '200': # OK + description: 'Real-Time media Communication Configuration Updated' + content: + application/json: + schema: + $ref: '#/components/schemas/RTCConfiguration' + '204': # No Content + description: 'Real-Time media Communication Configuration Unchanged' + '400': # Bad Request: The syntax of the HTTP request is malformed in a way not covered by one of the following more specific client errors + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': # Unauthorized + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': # Forbidden + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': # Not Found + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '410': # Gone: Resource no longer exists + $ref: 'TS29571_CommonData.yaml#/components/responses/410' + '411': # Length Required + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': # Payload Too Large + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '414': # URI Too Long + $ref: 'TS29571_CommonData.yaml#/components/responses/414' + '415': # Unsupported Media Type + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '500': # Internal Server Error + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': # Service Unavailable + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + patch: + operationId: patchRTCConfiguration + summary: 'Patch the Real-Time media Communication Configuration for the specified Provisioning Session' + requestBody: + description: 'A JSON representation of a Real-Time media Communication Configuration' + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/RTCConfiguration' + application/json-patch+json: + schema: + $ref: '#/components/schemas/RTCConfiguration' + responses: + '200': # OK + description: 'Real-Time media Communication Configuration Updated' + content: + application/json: + schema: + $ref: '#/components/schemas/RTCConfiguration' + '204': # No Content + description: 'Real-Time media Communication Configuration Unchanged' + '400': # Bad Request: The syntax of the HTTP request is malformed in a way not covered by one of the following more specific client errors + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': # Unauthorized + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': # Forbidden + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': # Not Found + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '410': # Gone: Resource no longer exists + $ref: 'TS29571_CommonData.yaml#/components/responses/410' + '411': # Length Required + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': # Payload Too Large + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '414': # URI Too Long + $ref: 'TS29571_CommonData.yaml#/components/responses/414' + '415': # Unsupported Media Type + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '500': # Internal Server Error + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': # Service Unavailable + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + delete: + operationId: destroyRTCConfiguration + summary: 'Destroy the current Real-Time media Communication Configuration of the specified Provisioning Session' + responses: + '204': # No Content + description: 'Real-Time media Communication Configuration Destroyed' + '400': # Bad Request: The syntax of the HTTP request is malformed in a way not covered by one of the following more specific client errors + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': # Unauthorized + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '404': # Not Found + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '410': # Gone: Resource no longer exists + $ref: 'TS29571_CommonData.yaml#/components/responses/410' + '413': # Payload Too Large: No request body allowed for this operation + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '414': # URI Too Long + $ref: 'TS29571_CommonData.yaml#/components/responses/414' + '500': # Internal Server Error + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': # Service Unavailable + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + OAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + RTCConfiguration: + type: object + description: "A representation of a Real-Time media Communication Configuration resource." + properties: + edgeResourcesConfiguration: + $ref: 'TS26510_CommonData.yaml#/components/schemas/ResourceId' + enableStunService: + type: boolean + default: false + stunEndpoints: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/M1EndpointAccess' + enableTurnService: + type: boolean + default: false + turnEndpoints: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/M1EndpointAccess' + enableSwapService: + type: boolean + default: false + swapEndpoints: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/M1EndpointAccess' + + M1EndpointAccess: + type: object + description: "Access details used for provisioning a service endpoint." + allOf: + - $ref: 'TS26510_CommonData.yaml#/components/schemas/EndpointAddress' + - type: object + properties: + credentials: + type: object + required: + - username + - passphrase + properties: + username: + type: string + minLength: 1 + passphrase: + type: string + minLength: 1 + certificateId: + $ref: 'TS26510_CommonData.yaml#/components/schemas/ResourceId' diff --git a/TS26510_Maf_SessionHandling_ConsumptionReporting.yaml b/TS26510_Maf_SessionHandling_ConsumptionReporting.yaml old mode 100644 new mode 100755 diff --git a/TS26510_Maf_SessionHandling_DynamicPolicy.yaml b/TS26510_Maf_SessionHandling_DynamicPolicy.yaml index 069732a7577116fb38627a7e4d0cf7dd396f38e4..12293264c71168ea878d3a21057275ce09e31256 100644 --- a/TS26510_Maf_SessionHandling_DynamicPolicy.yaml +++ b/TS26510_Maf_SessionHandling_DynamicPolicy.yaml @@ -281,21 +281,31 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' location: $ref: 'TS26510_CommonData.yaml#/components/schemas/TypedLocation' - serviceDataFlowDescriptions: + applicationFlowBindings: type: array items: - $ref: 'TS26510_CommonData.yaml#/components/schemas/ServiceDataFlowDescription' + $ref: '#/components/schemas/ApplicationFlowBinding' minItems: 1 - mediaType: - $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/MediaType' - qosSpecification: - $ref: 'TS26510_CommonData.yaml#/components/schemas/M5QoSSpecification' bdtSpecification: $ref: '#/components/schemas/M5BDTSpecification' qosEnforcement: readOnly: true type: boolean + ApplicationFlowBinding: + description: "A binding between an Application Flow and its QoS requirements provided by the Media Client." + type: object + required: + - componentReference; + properties: + componentReference: + type: string + minLength: 1 + applicationFlowDescription: + $ref: 'TS26510_CommonData.yaml#/components/schemas/ServiceDataFlowDescription' + qosSpecification: + $ref: 'TS26510_CommonData.yaml#/components/schemas/M5QoSSpecification' + M5BDTSpecification: description: "A client-facing set of Background Data Transfer bids/grants." type: object diff --git a/TS26510_Maf_SessionHandling_NetworkAssistance.yaml b/TS26510_Maf_SessionHandling_NetworkAssistance.yaml index 707cf5087e4f080d15ac9fbd8a04e344ea001f5f..3ba1499fe9abaec485c8ad50d907543c12853b81 100644 --- a/TS26510_Maf_SessionHandling_NetworkAssistance.yaml +++ b/TS26510_Maf_SessionHandling_NetworkAssistance.yaml @@ -350,7 +350,7 @@ components: - naSessionId - provisioningSessionId - sessionId - - serviceDataFlowDescriptions + - applicationFlowDescription properties: naSessionId: readOnly: true @@ -368,15 +368,13 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' location: $ref: 'TS26510_CommonData.yaml#/components/schemas/TypedLocation' - serviceDataFlowDescriptions: - type: array - items: - $ref: 'TS26510_CommonData.yaml#/components/schemas/ServiceDataFlowDescription' - minItems: 1 - mediaType: - $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/MediaType' policyTemplateId: $ref: 'TS26510_CommonData.yaml#/components/schemas/ResourceId' + componentReference: + type: string + minLength: 1 + applicationFlowDescription: + $ref: 'TS26510_CommonData.yaml#/components/schemas/ApplicationFlowDescription' requestedQoS: $ref: 'TS26510_CommonData.yaml#/components/schemas/M5QoSSpecification' recommendedQoS: diff --git a/TS26510_Maf_SessionHandling_ServiceAccessInformation.yaml b/TS26510_Maf_SessionHandling_ServiceAccessInformation.yaml index 4ed69803fe18ac83375b457fcf66c3f9029fa68a..056397398098c3a59a95d3e35b8325257ff89084 100644 --- a/TS26510_Maf_SessionHandling_ServiceAccessInformation.yaml +++ b/TS26510_Maf_SessionHandling_ServiceAccessInformation.yaml @@ -137,6 +137,24 @@ components: $ref: 'TS26510_CommonData.yaml#/components/schemas/AbsoluteUrl' mbsExternalServiceIdentifier: type: string + rtcClientConfiguration: + type: object + properties: + stunEndpoints: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/M5EndpointAccess' + turnEndpoints: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/M5EndpointAccess' + swapEndpoints: + type: array + minItems: 1 + items: + $ref: '#/components/schemas/M5EndpointAccess' clientConsumptionReportingConfiguration: type: object required: @@ -174,6 +192,9 @@ components: type: string policyTemplateId: $ref: 'TS26510_CommonData.yaml#/components/schemas/ResourceId' + pduSetMarking: + type: boolean + default: false bdtWindows: type: array minItems: 1 @@ -249,6 +270,26 @@ components: easRelocationRequirements: $ref: '#/components/schemas/M5EASRelocationRequirements' + M5EndpointAccess: + type: object + description: "Details used by a Media Client to access a service endpoint." + allOf: + - $ref: 'TS26510_CommonData.yaml#/components/schemas/EndpointAddress' + - type: object + properties: + credentials: + type: object + required: + - username + - passphrase + properties: + username: + type: string + minLength: 1 + passphrase: + type: string + minLength: 1 + M5EASRelocationRequirements: description: 'Relocation requirements of an EAS.' type: object diff --git a/TS29571_CommonData.yaml b/TS29571_CommonData.yaml old mode 100644 new mode 100755 index b3231c42dde16b6de100e06392e8e2b3779fb1e8..b89992bd0db51fe62922973caa862804f00f41c0 --- a/TS29571_CommonData.yaml +++ b/TS29571_CommonData.yaml @@ -1,15 +1,17 @@ openapi: 3.0.0 info: - version: '1.4.3' + version: '1.5.0-alpha.6' + + title: 'Common Data Types' description: | - Common Data Types for Service Based Interfaces. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). - All rights reserved. + Common Data Types for Service Based Interfaces.   + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).   + All rights reserved.   externalDocs: - description: 3GPP TS 29.571 Common Data Types for Service Based Interfaces, version 17.10.0 + description: 3GPP TS 29.571 Common Data Types for Service Based Interfaces, version 18.5.0 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.571/' paths: {} @@ -17,7 +19,7 @@ components: schemas: # -# Common Data Types for Generic usage definitiones as defined in clause 5.2 +# Common Data Types for Generic usage definitions as defined in clause 5.2 # # @@ -32,7 +34,8 @@ components: format: binary type: string nullable: true - description: "string with format 'binary' as defined in OpenAPI OpenAPI with 'nullable: true' property." + description: > + "string with format 'binary' as defined in OpenAPI OpenAPI with 'nullable: true' property." Bytes: format: byte @@ -236,7 +239,7 @@ components: 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent the support of 4 features as described in - table 5.2.2-3. The most significant character representing the highest-numbered features + table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters @@ -260,7 +263,9 @@ components: type: integer minimum: 0 maximum: 65535 - description: Integer where the allowed values correspond to the value range of an unsigned 16-bit integer. + description: > + Integer where the allowed values correspond to the value range of an + unsigned 16-bit integer. Uint16Rm: type: integer @@ -334,7 +339,7 @@ components: description: | String with format "time-numoffset" optionally appended by "daylightSavingTime", where - "time-numoffset" shall represent the time zone adjusted for daylight saving time and be - encoded as time-numoffset as defined in clause 5.6 of IETF RFC 3339; + encoded as time-numoffset as defined in clause 5.6 of IETF RFC 3339; - "daylightSavingTime" shall represent the adjustment that has been made and shall be encoded as "+1" or "+2" for a +1 or +2 hours adjustment. @@ -376,13 +381,22 @@ components: String representing the C-MSISDN as defined in clause 18.7 of 3GPP TS 23.003 with the OpenAPI 'nullable: true' property. + MonthOfYear: + type: integer + minimum: 1 + maximum: 12 + description: > + integer between and including 1 and 12 denoting a month. 1 shall indicate January, + and the subsequent months shall be indicated with the next higher numbers. + 12 shall indicate December. + DayOfWeek: type: integer minimum: 1 maximum: 7 description: > integer between and including 1 and 7 denoting a weekday. 1 shall indicate Monday, - and the subsequent weekdays shall be indicated with the next higher numbers. + and the subsequent weekdays shall be indicated with the next higher numbers. 7 shall indicate Sunday. TimeOfDay: @@ -502,14 +516,12 @@ components: description: A human-readable explanation specific to this occurrence of the problem. instance: $ref: '#/components/schemas/Uri' - cause: type: string description: > A machine-readable application error cause specific to this occurrence of the problem. This IE should be present and provide application-related error information, if available. - invalidParams: type: array items: @@ -523,6 +535,13 @@ components: $ref: 'TS29510_Nnrf_AccessToken.yaml#/components/schemas/AccessTokenReq' nrfId: $ref: '#/components/schemas/Fqdn' + supportedApiVersions: + type: array + items: + type: string + minItems: 1 + noProfileMatchInfo: + $ref: 'TS29510_Nnrf_NFDiscovery.yaml#/components/schemas/NoProfileMatchInfo' Link: type: object @@ -869,7 +888,42 @@ components: required: - matchingOperator + Ipv4AddressRange: + description: Range of IPv4 addresses + type: object + properties: + start: + $ref: '#/components/schemas/Ipv4Addr' + end: + $ref: '#/components/schemas/Ipv4Addr' + required: + - start + - end + + + Ipv6AddressRange: + description: Range of IPv6 addresses + type: object + properties: + start: + $ref: '#/components/schemas/Ipv6Addr' + end: + $ref: '#/components/schemas/Ipv6Addr' + required: + - start + - end + Ipv6PrefixRange: + description: Range of IPv6 prefixes + type: object + properties: + start: + $ref: '#/components/schemas/Ipv6Prefix' + end: + $ref: '#/components/schemas/Ipv6Prefix' + required: + - start + - end # # Data Types related to Subscription, Identification and Numbering as defined in clause 5.3 @@ -881,11 +935,11 @@ components: Dnn: type: string description: > - String representing a Data Network as defined in clause 9A of 3GPP TS 23.003; - it shall contain either a DNN Network Identifier, or a full DNN with both the Network - Identifier and Operator Identifier, as specified in 3GPP TS 23.003 clause 9.1.1 and 9.1.2. - It shall be coded as string in which the labels are separated by dots - (e.g. "Label1.Label2.Label3"). + String representing a Data Network as defined in clause 9A of 3GPP TS 23.003; + it shall contain either a DNN Network Identifier, or a full DNN with both the Network + Identifier and Operator Identifier, as specified in 3GPP TS 23.003 clause 9.1.1 and 9.1.2. + It shall be coded as string in which the labels are separated by dots + (e.g. "Label1.Label2.Label3"). DnnRm: type: string nullable: true @@ -977,7 +1031,8 @@ components: pattern: '^(imei-[0-9]{15}|imeisv-[0-9]{16}|mac((-[0-9a-fA-F]{2}){6})(-untrusted)?|eui((-[0-9a-fA-F]{2}){8})|.+)$' nullable: true description: > - This data type is defined in the same way as the 'Pei' data type but with the OpenAPI 'nullable: true' property. + This data type is defined in the same way as the 'Pei' data type but with + the OpenAPI 'nullable: true' property. Supi: type: string @@ -1071,11 +1126,46 @@ components: pattern: '^(imsi-[0-9]{5,15}|nai-.+|gli-.+|gci-.+|suci-(0-[0-9]{3}-[0-9]{2,3}|[1-7]-.+)-[0-9]{1,4}-(0-0-.*|[a-fA-F1-9]-([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])-[a-fA-F0-9]+)|.+)$' description: String identifying a SUPI or a SUCI. + Imsi: + description: String identifying an IMSI + type: string + pattern: '^[0-9]{5,15}$' + + ApplicationlayerId: + type: string + description: > + String identifying an UE with application layer ID. The format of the application + layer ID parameter is same as the Application layer ID defined in clause 11.3.4 of + 3GPP TS 24.554. + NsacSai: type: string description: > String identifying the Network Slice Admission Control Service Area Identifier. + +# +# ENUMERATED DATA TYPES +# + + GroupServiceId: + anyOf: + - type: integer + enum: + - 1 + - 2 + - 3 + - type: integer + description: > + This integer provides forward-compatibility with future + extensions to the enumeration but is not used to encode + content defined in the present version of this API. + description: | + Possible values are: + - 1: Group specific NAS level congestion control + - 2: Group specific Monitoring of Number of UEs present in a geographical area + - 3: Group specific Group specific for 5G LAN Type service + # # STRUCTURED DATA TYPES # @@ -1153,7 +1243,9 @@ components: Mnc: type: string pattern: '^\d{2,3}$' - description: Mobile Network Code part of the PLMN, comprising 2 or 3 digits, as defined in clause 9.3.3.5 of 3GPP TS 38.413. + description: > + Mobile Network Code part of the PLMN, comprising 2 or 3 digits, as defined in + clause 9.3.3.5 of 3GPP TS 38.413. MncRm: type: string @@ -1334,7 +1426,7 @@ components: encoding the Mobile Network Code part of the PLMN, comprising 3 digits. If there are only 2 significant digits in the MNC, one "0" digit shall be inserted at the left side to fill the 3 digits coding of MNC. Pattern: '^[0-9]{3}$' - encoded as defined in clause 5.4.2 ("Nid" data type definition) + encoded as defined in clause 5.4.2 ("Nid" data type definition) encoded as defined in clause 5.3.2 encoded as defined in 3GPP TS 29.510 encoded as a string of characters consisting of alphabetic @@ -1415,13 +1507,14 @@ components: minimum: 0 maximum: 16777215 description: > - Relay Service Code to identify a connectivity service provided by the UE-to-Network relay. + Relay Service Code to identify a connectivity service provided by the UE-to-Network relay or + the UE-to-UE relay. 5GPrukId: type: string description: > - A string carrying the CP-PRUK ID of the remote UE. The CP-PRUK ID is a string in NAI - format as specified in clause 28.7.11 of 3GPP TS 23.003. + A string carrying the CP-PRUK ID of the 5G ProSe Remote UE or the 5G ProSe End UE. + The CP-PRUK ID is a string in NAI format as specified in clause 28.7.11 of 3GPP TS 23.003. pattern: '^rid[0-9]{1,4}\.pid[0-9a-fA-F]+\@prose-cp\.5gc\.mnc[0-9]{2,3}\.mcc[0-9]{3}\.3gppnetwork\.org$' NsagId: @@ -1433,8 +1526,19 @@ components: type: integer nullable: true description: > - This data type is defined in the same way as the "NsagId" data type, but with the OpenAPI "nullable: true" property + This data type is defined in the same way as the "NsagId" data type, but with the OpenAPI + "nullable: true" property + GeoSatelliteId: + type: string + description: > + A string carrying the GEO Satellite ID. + + OffloadIdentifier: + type: string + description: > + Offload identifier uniquely identifying a VPLMN offloading policy information instance + pattern: '^[0-9]{3}-[0-9]{2,3}-[A-Fa-f0-9]{8}(-v[0-9]{1,2}){0,1}$' # # ENUMERATED DATA TYPES @@ -1491,6 +1595,7 @@ components: - LTE_M_MEO - LTE_M_GEO - LTE_M_OTHERSAT + - NR_EREDCAP - type: string description: Indicates the radio access used. @@ -1576,7 +1681,8 @@ components: - SSC_MODE_3 - type: string description: > - represents the service and session continuity mode It shall comply with the provisions defined in table 5.4.3.6-1. + represents the service and session continuity mode It shall comply with the provisions + defined in table 5.4.3.6-1. SscModeRm: anyOf: @@ -1902,6 +2008,10 @@ components: - MEO - LEO - OTHER_SAT + - DYNAMIC_GEO + - DYNAMIC_MEO + - DYNAMIC_LEO + - DYNAMIC_OTHER_SAT - NON_SATELLITE - type: string description: Indicates the satellite backhaul used. @@ -1914,6 +2024,46 @@ components: Provides information about the satellite backhaul but with the OpenAPI 'nullable: true' property. + BufferedNotificationsAction: + anyOf: + - type: string + enum: + - SEND_ALL + - DISCARD_ALL + - DROP_OLD + - type: string + description: > + Indicates the required action by the event producer NF on the buffered Notifications. + + SubscriptionAction: + anyOf: + - type: string + enum: + - CLOSE + - CONTINUE_WITH_MUTING + - CONTINUE_WITHOUT_MUTING + - type: string + description: > + Indicates the required action by the event producer NF on the event subscription if an + exception occurs while the event is muted. + + SnssaiStatus: + anyOf: + - type: string + enum: + - AVAILABLE + - UNAVAILABLE + - type: string + description: Indicates the S-NSSAI availability. + + TerminationIndication: + description: Indicates the termination of Network Slice Replacement. + anyOf: + - type: string + enum: + - NEW_UES_TERMINATION + - ALL_UES_TERMINATION + - type: string # @@ -2173,6 +2323,8 @@ components: to be used. globalGnbId: $ref: '#/components/schemas/GlobalRanNodeId' + ntnTaiInfo: + $ref: '#/components/schemas/NtnTaiInfo' required: - tai - ncgi @@ -2614,16 +2766,24 @@ components: type: boolean default: false description: > - Indicates the ATSSS-LL capability to support procedures related to Access Traffic - Steering, Switching, Splitting (see clauses 4.2.10, 5.32 of 3GPP TS 23.501). + Indicates the support of Access Traffic Steering, Switching and Splitting procedures + using the ATSSS-LL steering functionality (see clauses 4.2.10, 5.32 of 3GPP TS 23.501). true: Supported false (default): Not Supported mptcp: type: boolean default: false description: > - Indicates the MPTCP capability to support procedures related to Access Traffic Steering, - Switching, Splitting (see clauses 4.2.10, 5.32 of 3GPP TS 23.501 + Indicates the support of Access Traffic Steering, Switching and Splitting procedures + using the MPTCP steering functionality (see clauses 4.2.10, 5.32 of 3GPP TS 23.501 + true: Supported + false (default): Not Supported + mpquic: + type: boolean + default: false + description: > + Indicates the support of Access Traffic Steering, Switching and Splitting procedures + using the MPQUIC steering functionality (see clauses 4.2.10, 5.32 of 3GPP TS 23.501) true: Supported false (default): Not Supported rttWithoutPmf: @@ -2631,7 +2791,7 @@ components: default: false description: > This IE is only used by the UPF to indicate whether the UPF supports RTT measurement - without PMF (see clauses 5.32.2, 6.3.3.3 of 3GPP TS 23.501 + without PMF (see clauses 5.32.2, 6.3.3.3 of 3GPP TS 23.501 true: Supported false (default): Not Supported PlmnIdNid: @@ -2725,9 +2885,14 @@ components: $ref: '#/components/schemas/AreaCode' areaCodeC: $ref: '#/components/schemas/AreaCode' + combGciAndHfcNIds: + type: array + items: + $ref: '#/components/schemas/CombGciAndHfcNIds' + minItems: 1 description: > - One and only one of the "globLineIds", "hfcNIds", "areaCodeB" and "areaCodeC" attributes - shall be included in a WirelineArea data structure + One and only one of the "globLineIds", "hfcNIds", "areaCodeB",d "areaCodeC" and + combGciAndHfcNIds attributes shall be included in a WirelineArea data structure WirelineServiceAreaRestriction: type: object @@ -2836,7 +3001,7 @@ components: with the OpenAPI 'nullable: true' property. AcsInfo: - description: The ACS information for the 5G-RG is defined in BBF TR-069 [42] or in BBF TR-369 + description: The ACS information for the 5G-RG is defined in BBF TR-069 [42] or in BBF TR-369 type: object properties: acsUrl: @@ -2950,7 +3115,7 @@ components: type: string pattern: '^[0-9A-F]{20}$' description: > - Refers to Calling Geodetic Location. See ITU-T Recommendation Q.763 (1999) clause + Refers to Calling Geodetic Location. See ITU-T Recommendation Q.763 (1999) clause 3.88.2. Only the description of an ellipsoid point with uncertainty circle is allowed to be used. @@ -2963,8 +3128,6 @@ components: - sai - required: - lai - - required: - - rai description: Exactly one of cgi, sai or lai shall be present. properties: locationNumber: @@ -2972,12 +3135,12 @@ components: description: Location number within the PLMN. See 3GPP TS 23.003, clause 4.5. cgi: $ref: '#/components/schemas/CellGlobalId' - rai: - $ref: '#/components/schemas/RoutingAreaId' sai: $ref: '#/components/schemas/ServiceAreaId' lai: $ref: '#/components/schemas/LocationAreaId' + rai: + $ref: '#/components/schemas/RoutingAreaId' vlrNumber: type: string description: VLR number. See 3GPP TS 23.003 clause 5.1. @@ -3232,7 +3395,7 @@ components: ProseServiceAuth: description: > - Indicates whether the UE is authorized to use ProSe related services. + Indicates whether the UE is authorized to use related services. type: object properties: proseDirectDiscoveryAuth: @@ -3247,6 +3410,16 @@ components: $ref: '#/components/schemas/UeAuth' proseL3RemoteAuth: $ref: '#/components/schemas/UeAuth' + proseMultipathComL2RemoteAuth: + $ref: '#/components/schemas/UeAuth' + proseL2UeRelayAuth: + $ref: '#/components/schemas/UeAuth' + proseL3UeRelayAuth: + $ref: '#/components/schemas/UeAuth' + proseL2EndAuth: + $ref: '#/components/schemas/UeAuth' + proseL3EndAuth: + $ref: '#/components/schemas/UeAuth' EcsServerAddr: description: > @@ -3316,6 +3489,9 @@ components: type: integer minimum: 0 maximum: 100 + uesWithPduSessionInd: + type: boolean + default: false SACEventStatus: description: > @@ -3453,6 +3629,206 @@ components: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/CivicAddress' minItems: 1 + MutingExceptionInstructions: + description: > + Indicates to an Event producer NF instructions for the subscription and stored events when + an exception (e.g. full buffer) occurs at the Event producer NF while the event is muted. + type: object + properties: + bufferedNotifs: + $ref: '#/components/schemas/BufferedNotificationsAction' + subscription: + $ref: '#/components/schemas/SubscriptionAction' + + MutingNotificationsSettings: + description: > + Indicates the Event producer NF settings to the Event consumer NF + type: object + properties: + maxNoOfNotif: + type: integer + durationBufferedNotif: + $ref: '#/components/schemas/DurationSec' + + CombGciAndHfcNIds: + type: object + properties: + globalCableId: + $ref: '#/components/schemas/Gci' + hfcNId: + $ref: '#/components/schemas/HfcNId' + + + VplmnOffloadingInfo: + description: VPLMN Specific Offloading Information + type: object + nullable: true + properties: + offloadIdentifier: + $ref: '#/components/schemas/OffloadIdentifier' + vplmnId: + $ref: '#/components/schemas/PlmnId' + allowedTraffic: + type: boolean + default: true + ipv4AddressRanges: + type: array + items: + $ref: '#/components/schemas/Ipv4AddressRange' + minItems: 1 + ipv4AddrMasks: + type: array + items: + $ref: '#/components/schemas/Ipv4AddrMask' + minItems: 1 + ipv6AddressRanges: + type: array + items: + $ref: '#/components/schemas/Ipv6AddressRange' + minItems: 1 + ipv6PrefixRanges: + type: array + items: + $ref: '#/components/schemas/Ipv6PrefixRange' + minItems: 1 + fqdnList: + type: array + items: + $ref: '#/components/schemas/Fqdn' + minItems: 1 + fqdnPatterns: + type: array + items: + $ref: '#/components/schemas/FqdnPatternMatchingRule' + minItems: 1 + sessionDIAmbr: + $ref: '#/components/schemas/BitRate' + + PartiallyAllowedSnssai: + description: > + Indicates a S-NSSAI that is partially allowed in the Registration Area. + type: object + properties: + snssai: + $ref: '#/components/schemas/Snssai' + allowedTaiList: + type: array + items: + $ref: '#/components/schemas/Tai' + minItems: 1 + required: + - snssai + - allowedTaiList + + VarRepPeriod: + description: > + Indicates the Variable reporting periodicity for event reporting + type: object + properties: + repPeriod: + $ref: '#/components/schemas/DurationSec' + percValueNfLoad: + allOf: + - $ref: '#/components/schemas/Uinteger' + minimum: 0 + maximum: 100 + required: + - repPeriod + + + RangingSlPosAuth: + description: > + Indicates whether the UE is authorized to use related services. + type: object + properties: + rgSlPosTargetAuth: + $ref: '#/components/schemas/UeAuth' + rgSlPosSlRefAuth: + $ref: '#/components/schemas/UeAuth' + rgSlPosLocAuth: + $ref: '#/components/schemas/UeAuth' + rgSlPosClientAuth: + $ref: '#/components/schemas/UeAuth' + rgSlPosServerAuth: + $ref: '#/components/schemas/UeAuth' + + + NrA2xAuth: + description: Contains NR A2X services authorized information. + type: object + properties: + uavUeAuth: + $ref: '#/components/schemas/UeAuth' + + LteA2xAuth: + description: Contains LTE A2X services authorized information. + type: object + properties: + uavUeAuth: + $ref: '#/components/schemas/UeAuth' + + SliceUsageControlInfo: + description: The network slice usage control related information + type: object + required: + - sNssai + properties: + sNssai: + $ref: '#/components/schemas/Snssai' + deregInactTimer: + $ref: '#/components/schemas/DurationSec' + sessInactTimer: + $ref: '#/components/schemas/DurationSec' + anyOf: + - required: [ deregInactTimer ] + - required: [ sessInactTimer ] + + SnssaiDnnItem: + description: Combination of S-NSSAIs and DNNs + type: object + properties: + snssaiList: + type: array + items: + $ref: '#/components/schemas/ExtSnssai' + minItems: 1 + dnnList: + type: array + items: + $ref: '#/components/schemas/Dnn' + minItems: 1 + anyOf: + - required: [ snssaiList ] + - required: [ dnnList ] + + + NtnTaiInfo: + type: object + required: + - plmnId + - tacList + properties: + plmnId: + $ref: '#/components/schemas/PlmnIdNid' + tacList: + type: array + items: + $ref: '#/components/schemas/Tac' + minItems: 1 + derivedTac: + $ref: '#/components/schemas/Tac' + + MitigationInfo: + type: object + properties: + percValueNumUes: + type: integer + minimum: 0 + maximum: 100 + newUesInd: + type: boolean + + # # Data types describing alternative data types or combinations of data types # @@ -3466,6 +3842,26 @@ components: Differentiator value within the range of SD (if the sdRanges attribute is present) or with any value (if the wildcardSd attribute is present). + SnssaiReplaceInfo: + description: Indicates the status of an S-NSSAI and an alternative S-NSSAI optionally. + type: object + properties: + snssai: + $ref: '#/components/schemas/Snssai' + status: + $ref: '#/components/schemas/SnssaiStatus' + altSnssai: + $ref: '#/components/schemas/Snssai' + nsReplTerminInd: + $ref: '#/components/schemas/TerminationIndication' + plmnId: + $ref: '#/components/schemas/PlmnId' + mitigationInfo: + $ref: '#/components/schemas/MitigationInfo' + required: + - snssai + + # # Data Types related to 5G QoS as defined in clause 5.5 # @@ -3519,24 +3915,55 @@ components: pattern: '^\d+(\.\d+)? (bps|Kbps|Mbps|Gbps|Tbps)$' nullable: true description: > - This data type is defined in the same way as the 'BitRate' data type, but with the OpenAPI 'nullable: true' property. + This data type is defined in the same way as the 'BitRate' data type, but with the OpenAPI + 'nullable: true' property. - ArpPriorityLevelRm: - type: integer - minimum: 1 - maximum: 15 - nullable: true + PacketRate: + type: string + pattern: '^\d+(\.\d+)? (pps|kpps|Mpps|Gpps|Tpps)$' description: > - This data type is defined in the same way as the 'ArpPriorityLevel' data type, but with - the OpenAPI 'nullable: true' property. + String representing a packet rate, i.e., packet per second; the prefixes follow the symbols + from The International System of Units, and represent x1000 multipliers. - ArpPriorityLevel: - type: integer - minimum: 1 - maximum: 15 + PacketRateRm: + type: string + pattern: '^\d+(\.\d+)? (pps|kpps|Mpps|Gpps|Tpps)$' nullable: true description: > - nullable true shall not be used for this attribute. Unsigned integer indicating the ARP + This data type is defined in the same way as the 'PacketRate' data type, but with the + OpenAPI 'nullable: true' property. + + TrafficVolume: + type: string + pattern: '^\d+(\.\d+)? (B|kB|MB|GB|TB)$' + description: > + String representing a Traffic Volume measured in bytes; the prefixes follow the symbols + from The International System of Units, and represent x1000 multipliers. + + TrafficVolumeRm: + type: string + pattern: '^\d+(\.\d+)? (B|kB|MB|GB|TB)$' + nullable: true + description: > + This data type is defined in the same way as the 'TrafficVolume' data type, but with the + OpenAPI 'nullable: true' property. + + ArpPriorityLevelRm: + type: integer + minimum: 1 + maximum: 15 + nullable: true + description: > + This data type is defined in the same way as the 'ArpPriorityLevel' data type, but with + the OpenAPI 'nullable: true' property. + + ArpPriorityLevel: + type: integer + minimum: 1 + maximum: 15 + nullable: true + description: > + nullable true shall not be used for this attribute. Unsigned integer indicating the ARP Priority Level (see clause 5.7.2.2 of 3GPP TS 23.501, within the range 1 to 15.Values are ordered in decreasing order of priority, i.e. with 1 as the highest priority and 15 as the lowest priority. @@ -3612,7 +4039,9 @@ components: minimum: 1 maximum: 4095 default: 2000 - description: Unsigned integer indicating Averaging Window (see clause 5.7.3.6 and 5.7.4 of 3GPP TS 23.501), expressed in milliseconds. + description: > + Unsigned integer indicating Averaging Window (see clause 5.7.3.6 and 5.7.4 of + 3GPP TS 23.501), expressed in milliseconds. AverWindowRm: type: integer @@ -3690,7 +4119,7 @@ components: type: integer minimum: 1 description: > - Unsigned integer indicating Packet Delay Budget (see clauses 5.7.3.4 and 5.7.4 of 3GPP + Unsigned integer indicating Packet Delay Budget (see clauses 5.7.3.4 and 5.7.4 of 3GPP TS 23.501 [8])), expressed in 0.01 milliseconds. ExtPacketDelBudgetRm: @@ -3701,6 +4130,14 @@ components: This data type is defined in the same way as the 'ExtPacketDelBudget' data type, but with the OpenAPI 'nullable: true' property. " + Metadata: + format: byte + type: string + nullable: true + description: > + A String which is transparently passed to the UPF to be applied for traffic to SFC. + + # # ENUMERATED DATA TYPES # @@ -3816,7 +4253,7 @@ components: - $ref: '#/components/schemas/NullValue' description: > The enumeration AdditionalQosFlowInfo provides additional QoS flow information (see clause - 9.3.1.12 3GPP TS 38.413 [11]). It shall comply with the provisions defined in table + 9.3.1.12 3GPP TS 38.413 [11]). It shall comply with the provisions defined in table 5.5.3.12-1. PartitioningCriteria: @@ -3848,6 +4285,53 @@ components: description: > This data type is defined in the same way as the ' PartitioningCriteria ' data type, but with the OpenAPI 'nullable: true' property. + + PduSetHandlingInfo: + anyOf: + - type: string + enum: + - ALL_PDUS_NEEDED + - ALL_PDUS_NOT_NEEDED + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration but is not used to encode + content defined in the present version of this API. + description: | + Possible values are: + - "ALL_PDUS_NEEDED": All PDUs of the PDU Set are needed + - "ALL_PDUS_NOT_NEEDED": All PDUs of the PDU Set are not needed + + MediaTransportProto: + anyOf: + - type: string + enum: + - RTP + - SRTP + - type: string + description: > + The enumeration MediaTransportProto indicates the transport protocol used for a media flow. + + RtpHeaderExtType: + anyOf: + - type: string + enum: + - PDU_SET_MARKING + - type: string + description: > + The enumeration indicates the type of Rtp Header Extension type + + + RtpPayloadFormat: + anyOf: + - type: string + enum: + - H264 + - H265 + - type: string + description: > + The enumeration RtpPayloadFormat indicates the RTP Payload format + # # # STRUCTURED DATA TYPES @@ -3967,6 +4451,68 @@ components: - $ref: '#/components/schemas/SliceMbr' - $ref: '#/components/schemas/NullValue' + PduSetQosPara: + description: Represents the PDU Set level QoS parameters. + type: object + properties: + pduSetDelayBudget: + $ref: '#/components/schemas/ExtPacketDelBudget' + pduSetErrRate: + $ref: '#/components/schemas/PacketErrRate' + pduSetHandlingInfo: + $ref: '#/components/schemas/PduSetHandlingInfo' +# + + PduSetQosParaRm: + description: "PduSetQosPara with nullable: true" + anyOf: + - $ref: '#/components/schemas/PduSetQosPara' + - $ref: '#/components/schemas/NullValue' + + + ProtocolDescription: + description: ProtocolDescription contains information to derive PDU set information. + type: object + properties: + transportProto: + $ref: '#/components/schemas/MediaTransportProto' + rtpHeaderExtInfo: + $ref: '#/components/schemas/RtpHeaderExtInfo' + rtpPayloadInfoList: + type: array + items: + $ref: '#/components/schemas/RtpPayloadInfo' + minItems: 1 + + RtpHeaderExtInfo: + description: RTP Header Extension information + type: object + properties: + rtpHeaderExtType: + $ref: '#/components/schemas/RtpHeaderExtType' + rtpHeaderExtId: + type: integer + minimum: 1 + maximum: 255 + longFormat: + type: boolean + pduSetSizeActive: + type: boolean + + RtpPayloadInfo: + description: RtpPayloadInfo contains Rtp payload type and format. + type: object + properties: + rtpPayloadTypeList: + type: array + items: + type: integer + minimum: 1 + maximum: 127 + minItems: 1 + rtpPayloadFormat: + $ref: '#/components/schemas/RtpPayloadFormat' + # # Data Types related to 5G Trace as defined in clause 5.6 # @@ -3974,6 +4520,7 @@ components: # # SIMPLE DATA TYPES # + PhysCellId: type: integer minimum: 0 @@ -3981,6 +4528,7 @@ components: description: > Integer value identifying the physical cell identity (PCI), as definition of "PhysCellId" IE in clause 6.3.2 of 3GPP TS 38.331. + ArfcnValueNR: type: integer minimum: 0 @@ -3989,10 +4537,28 @@ components: Integer value indicating the ARFCN applicable for a downlink, uplink or bi-directional (TDD) NR global frequency raster, as definition of "ARFCN-ValueNR" IE in clause 6.3.2 of 3GPP TS 38.331. + + QoeReference: + description: > + String containing MCC (3 digits), MNC (2 or 3 digits) + and QMC ID (3 octets, encoded as 6 hexadecimal digits). + type: string + pattern: '^[0-9]{3}-[0-9]{2,3}-[A-Fa-f0-9]{6}$' + + MdtAlignmentInfo: + description: | + String containing: + - Trace Reference: MCC (3 digits), MNC (2 or 3 digits), + Trace ID (3 octets, encoded as 6 hexadecimal digits) + - Trace Recording Session Reference (2 octets, encoded as 4 hexadecimal digits) + format: string + pattern: '^[0-9]{3}-[0-9]{2,3}-[A-Fa-f0-9]{6}-[A-Fa-f0-9]{4}$' + # # # Enumerations # + TraceDepth: anyOf: - type: string @@ -4005,9 +4571,10 @@ components: - MAXIMUM_WO_VENDOR_EXTENSION - type: string description: > - The enumeration TraceDepth defines how detailed information should be recorded in the trace. - See 3GPP TS 32.422 for further description of the values. It shall comply with the - provisions defined in table 5.6.3.1-1 + The enumeration TraceDepth defines how detailed information should be recorded + in the trace. See 3GPP TS 32.422 for further description of the values. + It shall comply with the provisions defined in table 5.6.3.1-1 + TraceDepthRm: anyOf: - $ref: '#/components/schemas/TraceDepth' @@ -4087,8 +4654,8 @@ components: - type: string description: > The enumeration MeasurementNrForMdt defines Measurements used for MDT in NR in the trace. - See 3GPP TS 32.422 for further description of the values. It shall comply with the provisions - defined in table 5.6.3.6-1. + See 3GPP TS 32.422 for further description of the values. It shall comply with the + provisions defined in table 5.6.3.6-1. SensorMeasurement: anyOf: @@ -4099,9 +4666,9 @@ components: - UE_ORIENTATION - type: string description: > - The enumeration SensorMeasurement defines sensor measurement type for MDT in the trace. See 3GPP - TS 32.422 for further description of the values. It shall comply with the provisions defined - in table 5.6.3.7-1. + The enumeration SensorMeasurement defines sensor measurement type for MDT in the trace. + See 3GPP TS 32.422 for further description of the values. It shall comply with the + provisions defined in table 5.6.3.7-1. ReportingTrigger: anyOf: @@ -4230,8 +4797,8 @@ components: - type: string description: > The enumeration CollectionPeriodRmmLteMdt defines Collection period for RRM measurements - LTE for MDT in the trace. See 3GPP TS 32.422 for further description of the values. It shall - comply with the provisions defined in table 5.6.3.15-1. + LTE for MDT in the trace. See 3GPP TS 32.422 for further description of the values. + It shall comply with the provisions defined in table 5.6.3.15-1. MeasurementPeriodLteMdt: anyOf: @@ -4246,9 +4813,9 @@ components: - 60000 - type: string description: > - The enumeration MeasurementPeriodLteMdt defines Measurement period LTE for MDT in the trace. - See 3GPP TS 32.422 for further description of the values. It shall comply with the - provisions defined in table 5.6.3.16-1. + The enumeration MeasurementPeriodLteMdt defines Measurement period LTE for MDT in the + trace. See 3GPP TS 32.422 for further description of the values. It shall comply + with the provisions defined in table 5.6.3.16-1. ReportIntervalNrMdt: anyOf: @@ -4307,8 +4874,8 @@ components: - 60000 - type: string description: > - The enumeration CollectionPeriodRmmNrMdt defines Collection period for RRM measurements NR for MDT in the trace. - See 3GPP TS 32.422 for further description of the values. It shall comply with the provisions defined in table 5.6.3.19-1 + The enumeration CollectionPeriodRmmNrMdt defines Collection period for RRM measurements NR + for MDT in the trace. See 3GPP TS 32.422 for further description of the values. It shall comply with the provisions defined in table 5.6.3.19-1 LoggingDurationNrMdt: anyOf: @@ -4325,9 +4892,42 @@ components: The enumeration LoggingDurationMdt defines Logging Duration in NR for MDT in the trace. See 3GPP TS 32.422 for further description of the values. It shall comply with the provisions defined in table 5.6.3.20-1. + + QoeServiceType: + description: > + The enumeration QoeServiceType indicates the kind of service that shall be recorded for + QMC. It shall comply with the provisions defined in TS 29.571, table 5.6.3.21-1. + anyOf: + - type: string + enum: + - DASH + - MTSI + - VR + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + but is not used to encode content defined in the present version of this API. + + AvailableRanVisibleQoeMetric: + description: > + The enumeration AvailableRanVisibleQoeMetric indicates different available + RAN-visible QoE metrics to the gNB. It shall comply with the provisions defined + in TS 29.571, table 5.6.3.22-1. + anyOf: + - type: string + enum: + - APPLICATION_LAYER_BUFFER_LEVEL_LIST + - PLAYOUT_DELAY_FOR_MEDIA_STARTUP + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + but is not used to encode content defined in the present version of this API. + + # # STRUCTURED DATA TYPES # + TraceData: description: contains Trace control and configuration parameters. type: object @@ -4337,13 +4937,14 @@ components: type: string pattern: '^[0-9]{3}[0-9]{2,3}-[A-Fa-f0-9]{6}$' description: > - Trace Reference (see 3GPP TS 32.422).It shall be encoded as the concatenation of MCC, - MNC and Trace ID as follows: 'MCC'- + The Trace ID shall be encoded as a 3 octet string in hexadecimal + representation. Each character in the Trace ID string shall + take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent 4 bits. + The most significant character representing the 4 most significant bits of the + Trace ID shall appear first in the string, and the character representing the + 4 least significant bit of the Trace ID shall appear last in the string. traceDepth: $ref: '#/components/schemas/TraceDepth' @@ -4351,33 +4952,35 @@ components: type: string pattern: '^[A-Fa-f0-9]+$' description: > - List of NE Types (see 3GPP TS 32.422).It shall be encoded as an octet string in - hexadecimal representation. - Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" - and shall represent 4 bits. - The most significant character representing the 4 most significant bits shall appear - first in the string, and the character representing the - 4 least significant bit shall appear last in the string.Octets shall be coded + List of NE Types (see 3GPP TS 32.422). It shall be encoded as an octet string + in hexadecimal representation. Each character in the string shall take a value + of "0" to "9", "a" to "f" or "A" to "F" and shall represent 4 bits. + The most significant character representing the 4 most significant bits shall + appear first in the string, and the character representing the 4 least + significant bit shall appear last in the string. Octets shall be coded according to 3GPP TS 32.422. eventList: type: string pattern: '^[A-Fa-f0-9]+$' description: > - Triggering events (see 3GPP TS 32.422).It shall be encoded as an octet string in + Triggering events (see 3GPP TS 32.422). It shall be encoded as an octet string in hexadecimal representation. Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent 4 bits. - The most significant character representing the 4 most significant bits shall appear - first in the string, and the character representing the 4 least significant bit shall - appear last in the string. Octets shall be coded according to 3GPP TS 32.422. + The most significant character representing the 4 most significant bits shall + appear first in the string, and the character representing the 4 least + significant bit shall appear last in the string. Octets shall be coded + according to 3GPP TS 32.422. collectionEntityIpv4Addr: $ref: '#/components/schemas/Ipv4Addr' collectionEntityIpv6Addr: $ref: '#/components/schemas/Ipv6Addr' + traceReportingConsumerUri: + $ref: '#/components/schemas/Uri' interfaceList: type: string pattern: '^[A-Fa-f0-9]+$' description: > - List of Interfaces (see 3GPP TS 32.422).It shall be encoded as an octet string in + List of Interfaces (see 3GPP TS 32.422). It shall be encoded as an octet string in hexadecimal representation. Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent 4 bits. The most significant character representing the 4 most @@ -4429,6 +5032,20 @@ components: $ref: '#/components/schemas/ReportIntervalNrMdt' reportAmount: $ref: '#/components/schemas/ReportAmountMdt' + reportAmountPerMeasurementLte: + type: object + additionalProperties: + $ref: '#/components/schemas/ReportAmountMdt' + minProperties: 1 + description: > + A map (list of key-value pairs) where MeasurementLteForMdt serves as key; + reportAmountPerMeasurementNr: + type: object + additionalProperties: + $ref: '#/components/schemas/ReportAmountMdt' + minProperties: 1 + description: > + A map (list of key-value pairs) where MeasurementNrForMdt serves as key; eventThresholdRsrp: type: integer minimum: 0 @@ -4542,6 +5159,20 @@ components: minProperties: 1 description: > A map (list of key-value pairs) where PlmnId converted to a string serves as key + cagInfoPerPlmn: + type: object + additionalProperties: + $ref: '#/components/schemas/CagInfo' + minProperties: 1 + description: > + A map (list of key-value pairs) where PlmnId converted to a string serves as key + nidInfoPerPlmn: + type: object + additionalProperties: + $ref: '#/components/schemas/NidInfo' + minProperties: 1 + description: > + A map (list of key-value pairs) where PlmnId converted to a string serves as key TacInfo: description: contains tracking area information (tracking area codes). @@ -4555,6 +5186,30 @@ components: $ref: '#/components/schemas/Tac' minItems: 1 + CagInfo: + description: contains CAG IDs. + type: object + required: + - cagList + properties: + cagList: + type: array + items: + $ref: '#/components/schemas/CagId' + minItems: 1 + + NidInfo: + description: contains NIDs. + type: object + required: + - nidList + properties: + nidList: + type: array + items: + $ref: '#/components/schemas/Nid' + minItems: 1 + MbsfnArea: description: Contains an MBSFN area information. type: object @@ -4589,6 +5244,81 @@ components: UE is requested to perform measurement logging for the indicated frequency. + QmcConfigInfo: + description: > + It contains the configuration information for signaling-based activation of the + Quality of Experience (QoE) Measurements Collection (QMC) functionality. + type: object + required: + - qoeReference + properties: + qoeReference: + $ref: '#/components/schemas/QoeReference' + serviceType: + $ref: '#/components/schemas/QoeServiceType' + sliceScope: + type: array + items: + $ref: '#/components/schemas/Snssai' + minItems: 1 + areaScope: + $ref: '#/components/schemas/QmcAreaScope' + qoeCollectionEntityAddress: + $ref: '#/components/schemas/IpAddr' + qoeTarget: + $ref: '#/components/schemas/QoeTarget' + mdtAlignmentInfo: + $ref: '#/components/schemas/MdtAlignmentInfo' + availableRanVisibleQoeMetrics: + type: array + items: + $ref: '#/components/schemas/AvailableRanVisibleQoeMetric' + minItems: 1 + containerForAppLayerMeasConfig: + $ref: '#/components/schemas/Bytes' + mbsCommunicationServiceType: + $ref: '#/components/schemas/MbsServiceType' + + QmcAreaScope: + description: > + This IE contains the area in Cells or Tracking Areas where the QMC data collection + shall take place. + type: object + properties: + nrCellIdList: + type: array + items: + $ref: '#/components/schemas/NrCellId' + minItems: 1 + tacList: + type: array + items: + $ref: '#/components/schemas/Tac' + minItems: 1 + taiList: + type: array + items: + $ref: '#/components/schemas/Tai' + minItems: 1 + plmnList: + type: array + items: + $ref: '#/components/schemas/PlmnId' + minItems: 1 + + QoeTarget: + description: > + This parameter specifies the target object (individual UE) for the QMC in case of + signalling based QMC. It shall be able to carry an IMSI or a SUPI. + type: object + properties: + supi: + $ref: '#/components/schemas/Supi' + imsi: + $ref: '#/components/schemas/Imsi' + + + # Data Types related to 5G ODB as defined in clause 5.7 # @@ -4652,10 +5382,15 @@ components: Integer where the allowed values correspond to the value range of an unsigned 32-bit integer. + SmfChargingId: + description: String based Charging ID + type: string + pattern: '^(0|([1-9]{1}[0-9]{0,9}))\.smf-([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$' ApplicationChargingId: type: string - description: Application provided charging identifier allowing correlation of charging information. + description: > + Application provided charging identifier allowing correlation of charging information. RatingGroup: $ref: '#/components/schemas/Uint32' @@ -4809,6 +5544,18 @@ components: - TERMINATED - type: string + NrRedCapUeInfo: + description: > + Indicates whether the broadcast MBS session is intended only for NR RedCap UEs, + both for NR RedCap UEs and non-RedCap UEs, or only for non-RedCap UEs (default). + anyOf: + - type: string + enum: + - NR_REDCAP_UE_ONLY + - BOTH_NR_REDCAP_UE_AND_NON_REDCAP_UE + - NON_REDCAP_UE_ONLY + - type: string + # # STRUCTURED DATA TYPES # @@ -4899,19 +5646,23 @@ components: default: false writeOnly: true tmgi: - $ref: '#/components/schemas/Tmgi' + allOf: + - $ref: '#/components/schemas/Tmgi' readOnly: true expirationTime: - $ref: '#/components/schemas/DateTime' + allOf: + - $ref: '#/components/schemas/DateTime' readOnly: true serviceType: - $ref: '#/components/schemas/MbsServiceType' + allOf: + - $ref: '#/components/schemas/MbsServiceType' writeOnly: true locationDependent: type: boolean default: false areaSessionId: - $ref: '#/components/schemas/AreaSessionId' + allOf: + - $ref: '#/components/schemas/AreaSessionId' readOnly: true ingressTunAddrReq: type: boolean @@ -4924,13 +5675,16 @@ components: minItems: 1 readOnly: true ssm: - $ref: '#/components/schemas/Ssm' + allOf: + - $ref: '#/components/schemas/Ssm' writeOnly: true mbsServiceArea: - $ref: '#/components/schemas/MbsServiceArea' + allOf: + - $ref: '#/components/schemas/MbsServiceArea' writeOnly: true extMbsServiceArea: - $ref: '#/components/schemas/ExternalMbsServiceArea' + allOf: + - $ref: '#/components/schemas/ExternalMbsServiceArea' writeOnly: true redMbsServArea: $ref: '#/components/schemas/MbsServiceArea' @@ -4939,10 +5693,12 @@ components: $ref: '#/components/schemas/ExternalMbsServiceArea' readOnly: true dnn: - $ref: '#/components/schemas/Dnn' + allOf: + - $ref: '#/components/schemas/Dnn' writeOnly: true snssai: - $ref: '#/components/schemas/Snssai' + allOf: + - $ref: '#/components/schemas/Snssai' writeOnly: true activationTime: deprecated: true @@ -4967,6 +5723,10 @@ components: items: $ref: '#/components/schemas/MbsFsaId' minItems: 1 + associatedSessionId: + $ref: '#/components/schemas/AssociatedSessionId' + nrRedCapUeInfo: + $ref: '#/components/schemas/NrRedCapUeInfo' required: - serviceType anyOf: @@ -4998,7 +5758,8 @@ components: nfcInstanceId: $ref: '#/components/schemas/NfInstanceId' mbsSessionSubscUri: - $ref: '#/components/schemas/Uri' + allOf: + - $ref: '#/components/schemas/Uri' readOnly: true required: - eventList @@ -5062,10 +5823,13 @@ components: MbsSecurityContext: + description: MBS security context consisting of MSK/MTK(s) and associated IDs type: object properties: keyList: - description: A map (list of key-value pairs) where a (unique) valid JSON string serves as key of MbsSecurityContext + description: > + A map (list of key-value pairs) where a (unique) valid JSON string serves + as key of MbsSecurityContext type: object additionalProperties: $ref: '#/components/schemas/MbsKeyInfo' @@ -5200,6 +5964,256 @@ components: minItems: 1 maxItems: 2 + AssociatedSessionId: + description: an associated Session Id used in MOCN + anyOf: + - $ref: '#/components/schemas/Ssm' + - type: string + + + +# Data Types related to Time Synchronization as defined in clause 5.10 +# + +# +# SIMPLE DATA TYPES +# +# + + +# +# Enumerations +# +# + + SynchronizationState: + description: Indicates the Synchronization State. + anyOf: + - type: string + enum: + - LOCKED + - HOLDOVER + - FREERUN + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration but is not used to encode + content defined in the present version of this API. + + TimeSource: + description: Indicates the Time Source. + anyOf: + - type: string + enum: + - SYNC_E + - PTP + - GNSS + - ATOMIC_CLOCK + - TERRESTRIAL_RADIO + - SERIAL_TIME_CODE + - NTP + - HAND_SET + - OTHER + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration but is not used to encode + content defined in the present version of this API. + + ClockQualityDetailLevel: + description: Indicates the Clock Quality Detail Level. + anyOf: + - type: string + enum: + - CLOCK_QUALITY_METRICS + - ACCEPT_INDICATION + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration but is not used to encode + content defined in the present version of this API. + +# +# STRUCTURED DATA TYPES +# + + ClockQualityAcceptanceCriterion: + description: Contains a Clock Quality Acceptance Criterion. + type: object + properties: + synchronizationState: + type: array + items: + $ref: '#/components/schemas/SynchronizationState' + minItems: 1 + clockQuality: + $ref: '#/components/schemas/ClockQuality' + parentTimeSource: + type: array + items: + $ref: '#/components/schemas/TimeSource' + minItems: 1 + + ClockQuality: + description: Contains Clock Quality. + type: object + properties: + traceabilityToGnss: + type: boolean + traceabilityToUtc: + type: boolean + frequencyStability: + $ref: '#/components/schemas/Uint16' + clockAccuracyIndex: + type: string + pattern: '^[A-Fa-f0-9]{2}$' + clockAccuracyValue: + type: integer + minimum: 1 + maximum: 40000000 + + + +# Data Types related to IMS SBA as defined in clause 5.11 +# + +# +# SIMPLE DATA TYPES +# +# + + SessionId: + description: IMS Session Identifier + type: string + + MediaId: + description: IMS Media Flow Identifier + type: string + + MaxMessageSize: + description: Maximum SCTP user message size + type: integer + maximum: 64 + default: 64 + + +# +# Enumerations +# +# + MediaResourceType: + description: Indicates the Media Resource type + anyOf: + - type: string + enum: + - DC + - AR + - AUDIO + - VIDEO + - type: string + + MediaProxy: + description: Media Proxy Configuration applicable to the media flow + anyOf: + - type: string + enum: + - HTTP + - UDP + - type: string + + SecuritySetup: + description: security setup of the DTLS connection + anyOf: + - type: string + enum: + - ACTIVE + - PASSIVE + - ACTPASS + - type: string + +# STRUCTURED DATA TYPES +# + DcEndpoint: + description: Endpoint for Data Channel + type: object + properties: + sctpPort: + type: integer + maximum: 65535 + minimum: 0 + description: Local or remote port for Data Channel + fingerprint: + type: string + pattern: '^(SHA-1|SHA-224|SHA-256|SHA-384|SHA-512|MD5|MD2|TOKEN)\s[0-9A-F]{2}(:[0-9A-F]{2})+' + description: local or remote certificate fingerprint for the DTLS association + tlsId: + type: string + pattern: '^[A-Fa-f0-9+/_-]{20,255}$' + description: local or remote TLS ID for the media stream + + DcStream: + description: Data Channel mapping and configuration information + type: object + properties: + streamId: + type: integer + maximum: 65535 + default: 0 + description: Stream identifier for Data Channel + subprotocol: + type: string + pattern: '^[A-Fa-f0-9]{20}$' + description: Subprotocol of the SCTP stream + order: + type: boolean + maxRetry: + type: integer + default: 0 + description: maximal number of the times a message will be retransmitted + maxTime: + type: integer + default: 0 + description: > + maximal lifetime in milliseconds after which a message will no longer be + transmitted or retransmitted + priority: + type: integer + default: 256 + description: priority of data channel relative to other data channels + appBindingInfo: + type: string + description: application binding information of the Data Channel. + + + ReplaceHttpUrl: + description: replacement HTTP URL per stream + type: object + properties: + replaceHttpUrl: + $ref: '#/components/schemas/Uri' + streamId: + type: integer + maximum: 65535 + default: 0 + description: Stream identifier for Data Channel + + Endpoint: + description: Represents the IP endpoint. + type: object + required: + - ip + - transport + - portNumber + properties: + ip: + $ref: '#/components/schemas/IpAddr' + transport: + $ref: '#/components/schemas/TransportProtocol' + portNumber: + $ref: '#/components/schemas/Uinteger' + + + # # HTTP responses # @@ -5218,7 +6232,8 @@ components: schema: type: string 3gpp-Sbi-Target-Nf-Id: - description: 'Identifier of target NF (service) instance towards which the request is redirected' + description: > + 'Identifier of target NF (service) instance towards which the request is redirected' schema: type: string '308': @@ -5297,7 +6312,7 @@ components: schema: $ref: '#/components/schemas/ProblemDetails' '413': - description: Payload Too Large + description: Content Too Large content: application/problem+json: schema: