diff --git a/TS24558_Eecs_ServiceProvisioning.yaml b/TS24558_Eecs_ServiceProvisioning.yaml index ff6361f..700617e 100644 --- a/TS24558_Eecs_ServiceProvisioning.yaml +++ b/TS24558_Eecs_ServiceProvisioning.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Eecs_ServiceProvisioning - version: "1.1.0-alpha.4" + version: "1.1.0-alpha.5" description: | API for ECS Service Provisioning. © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 24.558 V18.3.0 Enabling Edge Applications; Protocol specification. + description: 3GPP TS 24.558 V18.4.0 Enabling Edge Applications; Protocol specification. url: https://www.3gpp.org/ftp/Specs/archive/24_series/24.558/ security: @@ -334,6 +334,8 @@ components: items: $ref: 'TS24558_Eees_EECRegistration.yaml#/components/schemas/ACProfile' description: Information about services the EEC wants to connect to. + appGroupProfile: + $ref: '#/components/schemas/AppGroupProfile' eecSvcContSupp: type: array items: @@ -369,6 +371,12 @@ components: $ref: '#/components/schemas/EDNConfigInfo' minItems: 1 description: List of EDN configuration information. + redirectedECS: + type: array + items: + $ref: '#/components/schemas/ECSRedirectInfo' + minItems: 1 + description: List of redirected ECS information. required: - ednCnfgInfo @@ -440,6 +448,12 @@ components: $ref: '#/components/schemas/EDNConfigInfo' minItems: 1 description: List of EDN configuration information. + redirectedECS: + type: array + items: + $ref: '#/components/schemas/ECSRedirectInfo' + minItems: 1 + description: List of redirected ECS information. required: - subId - ednCnfgInfo @@ -454,6 +468,23 @@ components: type: string description: Identifies the SSID of the access point to which the UE is attached. + AppGroupProfile: + description: Represents the application group profile for common EAS. + type: object + properties: + appGrpId: + type: string + description: Represents the application group that uniquely identifies + the group of UEs using the same application. + easId: + type: string + description: Represents the application identifier of the EAS. + expectedSvcArea: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + required: + - appGrpId + - easId + EDNConfigInfo: description: Represents the EDN configuration information. type: object @@ -472,6 +503,21 @@ components: - ednConInfo - eess + ECSRedirectInfo: + description: > + Represents ECS information where the EEC shall redirect the ECS Service + Provisioning request. + type: object + properties: + ecsEndPt: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + required: + - ecsEndPt + EDNConInfo: description: Represents an EDN connection information. type: object @@ -499,6 +545,11 @@ components: description: > Application identities of the Edge Application Servers registered with the EES. + appGroupIdList: + type: array + items: + type: string + description: List of Application Group IDs associated with EAS. ecspInfo: type: string description: Represents an ECSP Information. @@ -536,8 +587,12 @@ components: minItems: 1 description: > Indicates the authentication methods supported by the EES. - easBundleInfo: - $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASBundleInfo' + easBundleInfos: + type: array + items: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASBundleInfo' + minItems: 1 + description: List of EAS bundles to which the EAS belongs. required: - eesId - eecRegConf @@ -587,4 +642,3 @@ components: items: $ref: '#/components/schemas/ConnectivityInfo' description: List of connectivity information for the UE. - diff --git a/TS24558_Eees_ACREvents.yaml b/TS24558_Eees_ACREvents.yaml index 1f817f8..6bb2365 100644 --- a/TS24558_Eees_ACREvents.yaml +++ b/TS24558_Eees_ACREvents.yaml @@ -2,7 +2,7 @@ openapi: 3.0.0 info: title: Eees_ACREvents - version: "1.1.0-alpha.2" + version: "1.1.0-alpha.3" description: | API for ACR events subscription and notification. © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). @@ -10,7 +10,7 @@ info: externalDocs: description: > - 3GPP TS 24.558 V18.3.0 Enabling Edge Applications; Protocol specification. + 3GPP TS 24.558 V18.4.0 Enabling Edge Applications; Protocol specification. url: 'https://www.3gpp.org/ftp/Specs/archive/24_series/24.558/' security: @@ -342,6 +342,17 @@ components: $ref: '#/components/schemas/ACRCompleteEventInfo' eecCtxtReloc: $ref: '#/components/schemas/EecCtxtRelocStatus' + acrScenarioList: + type: array + items: + $ref: 'TS29558_Eecs_EESRegistration.yaml#/components/schemas/ACRScenario' + easBundleInfo: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASBundleInfo' + tEasEndPointBundleList: + type: array + items: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + minItems: 1 required: - subId - easId @@ -412,5 +423,3 @@ components: required: - acrRes - tEasEndpoint - - diff --git a/TS24558_Eees_AppContextRelocation.yaml b/TS24558_Eees_AppContextRelocation.yaml index cf34a21..a49dcb6 100644 --- a/TS24558_Eees_AppContextRelocation.yaml +++ b/TS24558_Eees_AppContextRelocation.yaml @@ -1,7 +1,7 @@ openapi: 3.0.0 info: title: Eees Application Context Relocation Service - version: "1.1.0-alpha.3" + version: "1.1.0-alpha.4" description: | Eees Application Context Relocation Service. © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). @@ -9,7 +9,7 @@ info: externalDocs: description: > - 3GPP TS 24.558 V18.3.0; Enabling Edge Applications; Protocol specification; Stage 3. + 3GPP TS 24.558 V18.4.0; Enabling Edge Applications; Protocol specification; Stage 3. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/24.558/' servers: @@ -213,10 +213,19 @@ components: default: false eecCtxtReloc: $ref: '#/components/schemas/EecCtxtReloc' - predictExpTime: - $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' expectedLocArea: $ref: '#/components/schemas/ExpectedLocationArea' + acrParams: + $ref: '#/components/schemas/AcrParameters' + acrModificationParams: + $ref: '#/components/schemas/AcrModificationParams' + easBundleInfo: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASBundleInfo' + tEasEndPointBundleList: + type: array + items: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + minItems: 1 required: - requestorId - tEasEndpoint @@ -238,6 +247,13 @@ components: $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' expectedLocArea: $ref: '#/components/schemas/ExpectedLocationArea' + easBundleInfo: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASBundleInfo' + tEasEndPointBundleList: + type: array + items: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + minItems: 1 required: - ueId - tEasId @@ -269,3 +285,23 @@ components: $ref: 'TS29122_MonitoringEvent.yaml#/components/schemas/LocationInfo' svcArea: $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + + AcrParameters: + description: > + Represents ACR parameters specific to ACR request initiated for Service continuity planning. + type: object + properties: + predictExpTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + + AcrModificationParams: + description: > + Represents ACR parameters specific to ACR modification request. + type: object + properties: + sEasEndpoint: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + tEasEndpoint: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + acrParams: + $ref: '#/components/schemas/AcrParameters' diff --git a/TS24558_Eees_EASDiscovery.yaml b/TS24558_Eees_EASDiscovery.yaml index 71539bd..cd8155b 100644 --- a/TS24558_Eees_EASDiscovery.yaml +++ b/TS24558_Eees_EASDiscovery.yaml @@ -6,11 +6,11 @@ info: API for EAS Discovery. © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.1.0-alpha.4" + version: "1.1.0-alpha.5" externalDocs: description: > - 3GPP TS 24.558 V18.3.0 Enabling Edge Applications; Protocol specification. + 3GPP TS 24.558 V18.4.0 Enabling Edge Applications; Protocol specification. url: https://www.3gpp.org/ftp/Specs/archive/24_series/24.558/ security: @@ -510,6 +510,8 @@ components: $ref: '#/components/schemas/ACCharacteristics' minItems: 1 description: AC description for which an EAS is needed. + appGroupProfile: + $ref: 'TS24558_Eecs_ServiceProvisioning.yaml#/components/schemas/AppGroupProfile' easChars: type: array items: @@ -573,6 +575,8 @@ components: properties: eas: $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASProfile' + eesEndPt: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' lifeTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' required: @@ -732,4 +736,3 @@ components: properties: numRecPerf: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - diff --git a/TS24558_Eees_EASInformationProvisioning.yaml b/TS24558_Eees_EASInformationProvisioning.yaml new file mode 100644 index 0000000..480a5b3 --- /dev/null +++ b/TS24558_Eees_EASInformationProvisioning.yaml @@ -0,0 +1,216 @@ +openapi: 3.0.0 + +info: + title: Eees_EASInformationProvisioning + version: "1.1.0-alpha.0" + description: | + API for EAS Information Provisioning. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 24.558 V18.4.0 Enabling Edge Applications; Protocol specification. + url: 'https://www.3gpp.org/ftp/Specs/archive/24_series/24.558/' + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/eees-easinfoprov/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 7.5 of 3GPP TS 29.558. + +paths: + + /declare: + post: + operationId: declare + tags: + - EAS Information Provision + description: Declare EAS information provisioning to the EES. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/EASInfoProvReq' + responses: + '200': + description: Information about the successful EAS information provisioning response. + content: + application/json: + schema: + $ref: '#/components/schemas/EASInfoProvResp' + '204': + description: No Content (EAS information request is processed and successful) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + + EASInfoProvReq: + description: Describes the parameters shared to perform EAS Information Provision related operations. + type: object + properties: + eecId: + type: string + description: Represents a unique identifier of the EEC. + acId: + type: string + description: Identity of the AC. + selEasIds: + type: array + items: + type: string + minItems: 1 + description: Indicates the identifier(s) of the selected EAS(s) for EAS bundles, which is either instantiated or instantiable.. + appGrpId: + type: string + description: > + Application group identifier, identifying a group of UEs using the same + application service. + eesList: + type: array + items: + $ref: 'TS24558_Eecs_ServiceProvisioning.yaml#/components/schemas/EESInfo' + minItems: 1 + description: Contains the list of EES which supports the application group identifier. + reqType: + $ref: '#/components/schemas/EasInfoProvReqType' + selAcrScenarios: + type: array + items: + $ref: 'TS29558_Eecs_EESRegistration.yaml#/components/schemas/ACRScenario' + minItems: 1 + description: > + Indicates if the list of ACR scenarios are selected by the EEC. + selEasEndPoints: + type: array + items: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + minItems: 1 + description: > + Indicates the endpoints of the selected EAS(s) for EAS bundles. + dnais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + minItems: 1 + description: Represents list of Data network access identifiers for each selected EAS indetifier. + svcArea: + type: array + items: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + minItems: 1 + description: Represents list of service are for each selected EAS indetifier. + assEesEndPoints: + type: array + items: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + minItems: 1 + description: > + Indicates the endpoints of the selected EES(s) of other EES which support the direct bundled EAS within the same EDN and associated with the EASID list for EAS bundles. + casInfo: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + acProf: + $ref: 'TS24558_Eees_EECRegistration.yaml#/components/schemas/ACProfile' + eecSvcContSupp: + type: array + items: + $ref: 'TS29558_Eecs_EESRegistration.yaml#/components/schemas/ACRScenario' + minItems: 1 + description: > + Indicates which ACR scenarios are supported by the EEC, if this attribute is not present, then the EEC does not support service continuity. + required: + - eecId + - acId + - selEasIds + + EASInfoProvResp: + description: Information about the EAS information provisioning response. + type: object + properties: + selAcrScenarioList: + type: array + items: + $ref: 'TS29558_Eecs_EESRegistration.yaml#/components/schemas/ACRScenario' + minItems: 1 + description: > + Indicates the list of ACR scenarios are selected by the EES. + instEasInfo: + $ref: '#/components/schemas/InstantiatedEASInfo' + comEasEndpoint: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + comEesEndpoint: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + + InstantiatedEASInfo: + description: EAS details. + type: object + properties: + eas: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASProfile' + lifeTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + eesEndpoint: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + required: + - eas + + EasInfoProvReqType: + anyOf: + - type: string + enum: + - ACR_SCENARIO_SELECTION_ANNOUNCEMENT + - ACR_SCENARIO_SELECTION_REQUEST + - EAS_SELECTION + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration and is not used to encode + content defined in the present version of this API. + description: > + Represents the type of EAS Information Provisioning Request. + Possible values are: + - ACR_SCENARIO_SELECTION_ANNOUNCEMENT: Indicates EAS information provisioning request type is ACR scenario selection announcement. + - ACR_SCENARIO_SELECTION_REQUEST: Indicates EAS information provisioning request type is ACR scenario selection request. + - EAS_SELECTION: Indicates EAS information provisioning request type is EAS selection. diff --git a/TS24558_Eees_EECRegistration.yaml b/TS24558_Eees_EECRegistration.yaml index 9ead54f..c2cc578 100644 --- a/TS24558_Eees_EECRegistration.yaml +++ b/TS24558_Eees_EECRegistration.yaml @@ -2,7 +2,7 @@ openapi: 3.0.0 info: title: Eees_EECRegistration - version: "1.1.0-alpha.4" + version: "1.1.0-alpha.5" description: | API for EEC registration. © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). @@ -10,7 +10,7 @@ info: externalDocs: description: > - 3GPP TS 24.558 V18.3.0 Enabling Edge Applications; Protocol specification. + 3GPP TS 24.558 V18.4.0 Enabling Edge Applications; Protocol specification. url: 'https://www.3gpp.org/ftp/Specs/archive/24_series/24.558/' security: @@ -281,6 +281,7 @@ components: type: array items: $ref: 'TS24558_Eees_EASDiscovery.yaml#/components/schemas/DiscoveredEas' + minItems: 1 unfulfillAcProfs: type: array items: @@ -328,8 +329,13 @@ components: $ref: '#/components/schemas/EasDetail' minItems: 1 description: List of EAS information. - easBundleInfo: - $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASBundleInfo' + easBundleInfos: + type: array + items: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASBundleInfo' + minItems: 1 + description: > + List of EAS bundles to which the EAS (identified via the "easId" attribute) belongs. required: - acId @@ -435,4 +441,3 @@ components: Possible values are: - CONSTRAINED_UE: Indicates UE is constrained with resources like power, processor etc. - NORMAL_UE: Indicates UE is not constrained with resources. - diff --git a/TS24559_ADAE_ServiceConfiguration.yaml b/TS24559_ADAE_ServiceConfiguration.yaml new file mode 100644 index 0000000..fcd9431 --- /dev/null +++ b/TS24559_ADAE_ServiceConfiguration.yaml @@ -0,0 +1,703 @@ +openapi: 3.0.0 + +info: + title: ADAE_ServiceConfiguration + version: 1.0.0-alpha.1 + description: | + API for ADAE service configuration. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 24.559 V0.5.0 Appliction Data Analytics Enablement Service; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/24_series/24.559/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/adae-sc/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122. + +paths: + /application-performance: + post: + description: > + Creates a new individual VAL performance analytics event subscription. + operationId: VALPerformanceSubscription + tags: + - VAL performance event subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AppPerfSub' + callbacks: + notificationUri: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AppPerfNotif' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: VAL performance event subscription resource created successfully. + content: + application/json: + schema: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AppPerfSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /application-performance/{appPerfId}: + delete: + description: Deletes an individual VAL performance event subscription. + operationId: DeleteIndValPerfEventSubsc + tags: + - Individual VAL performance event subscription + parameters: + - name: appPerfId + in: path + description: Identifier of an individual VAL performance event subscription. + required: true + schema: + type: string + responses: + '204': + description: > + The individual VAL performance subscription matching the appPerfId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /ue2ue-session-performance/fetch: + post: + description: > + Obtain the UE-to-UE session performance analytics. + operationId: FetchUe2UeSessionPerformance + tags: + - Fetch UE-to-UE session performance analytics + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Ue2UePerfReq' + responses: + '200': + description: > + Successful case. The UE-to-UE session performance information is returned in + the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/Ue2UePerfResp' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /edge-load: + post: + description: > + Creates a new individual edge load data collection event subscription. + operationId: EdgeLoadDataCollectionSubscription + tags: + - Edge load data collection event subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: 'TS29549_SS_ADAE_EdgeLoadAnalytics.yaml#/components/schemas/EdgeSub' + callbacks: + notificationUri: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: 'TS29549_SS_ADAE_EdgeLoadAnalytics.yaml#/components/schemas/EdgeNotif' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: Edge load data collection event subscription resource created successfully. + content: + application/json: + schema: + $ref: 'TS29549_SS_ADAE_EdgeLoadAnalytics.yaml#/components/schemas/EdgeSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /edge-load/{edgeLdId}: + delete: + description: Deletes an individual edge load data collection event subscription. + operationId: DeleteIndEdgeLdDataCollectEventSubsc + tags: + - Individual edge load data collection event subscription + parameters: + - name: edgeLdId + in: path + description: Identifier of an individual edge load data collection event subscription. + required: true + schema: + type: string + responses: + '204': + description: > + The individual edge load data collection subscription matching the edgeLdId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /service-experience: + post: + description: > + Configures the ADAEC triggers for service experience reporting. + operationId: ConfigTriggerServExpReporting + tags: + - Configuration for service experience reporting (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigRepTrigger' + callbacks: + serExpNotificationUri: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SrvExpInfoRep' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: Triggers for service experience reporting configured successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigRepTrigger' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /service-experience/{srvTrigId}: + delete: + description: Abolish configured triggers for service experience reporting. + operationId: DeleteTriggerSrvExpReporting + tags: + - Individual configured trigger for service experience reporting + parameters: + - name: srvTrigId + in: path + description: Identifier of an individual triger-configured service experience reporting. + required: true + schema: + type: string + responses: + '204': + description: > + The individual trigger-configured service experiment reporting matching + the srvTrigId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /service-experience/push: + post: + description: > + Configure ADAE client to push service experience report to the ADAE server. + operationId: PushSrvExpReport + tags: + - Push service experienec report + requestBody: + required: true + content: + application/json: + schema: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + responses: + '200': + description: > + Successful case. The ADAE client pushes service experience reporting to the ADAE server. + content: + application/json: + schema: + $ref: '#/components/schemas/SrvExpInfoRep' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /service-experience/pull: + post: + description: > + ADAE server pulls service experience report from the ADAE client. + operationId: PullSrvExpReport + tags: + - Pull service experienec report + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/PullSrvExpInfo' + responses: + '200': + description: > + Successful case. The ADAE client provides service experience reporting to + the ADAE server. + content: + application/json: + schema: + $ref: '#/components/schemas/SrvExpInfoRep' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + Ue2UePerfReq: + description: ADAES requests ADAEC for the UE-to-UE session performance analytics. + type: object + properties: + serverId: + type: string + description: String identifying the ADAE server + analyticsId: + type: string + description: String identifying the UE-to-UE session analytics + valUeIds: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: > + One or more VAL UE IDs whose UE-to-UE session performance is requested. + pc5Qos: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Pc5QoSPara' + reportConfig: + $ref: 'TS29523_Npcf_EventExposure.yaml#/components/schemas/ReportingInformation' + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea' + timeWindow: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + required: + - serverId + - analyticsId + - valUeIds + - pc5Qos + + Ue2UePerfResp: + description: > + ADAEC responds to ADAES with the UE-to-UE session performance analytics information. + type: object + properties: + dataOutputs: + type: array + items: + type: string + minItems: 1 + description: > + UE-to-UE session performance analytics for prediction or statistics. + valUeIds: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: > + One or more VAL UE IDs whose UE-to-UE session performance has been requested. + analyticsId: + type: string + description: String identifying the UE-to-UE session analytics + required: + - dataOutputs + - valUeIds + - analyticsId + + ConfigRepTrigger: + description: Configures the ADAEC triggers for service experience reporting. + type: object + properties: + valServSpecCrit: + $ref: '#/components/schemas/ValServSpecCrit' + commonTriggCrit: + $ref: '#/components/schemas/SrvExpRepCrit' + srvExpMeas: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + notifyTarget: + type: string + description: the target address which is notified. + required: + - valServSpecCrit + + ValServSpecCrit: + description: String identifying the ADAE server. + type: object + properties: + valServerIds: + type: array + description: VAL servers for which configuration of service experience report applies. + items: + type: string + minItems: 1 + triggCrit: + $ref: '#/components/schemas/SrvExpRepCrit' + required: + - valServerIds + - triggCrit + + PullSrvExpInfo: + description: Contains VAL server and service identities. + type: object + properties: + valServerId: + type: string + valServiceId: + type: string + required: + - valServerId + + SrvExpInfoRep: + description: Allows ADAEC to provide the service experience report to the ADAES. + type: object + properties: + valUeId: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + valServerId: + type: string + description: String identifying the VAL server the service experience report applies. + valServiceId: + type: string + description: String identifying the VAL service + timeStamp: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + valSrvExpRep: + $ref: 'TS29523_Npcf_EventExposure.yaml#/components/schemas/ReportingInformation' + required: + - valUeId + - valServerId + +# Simple data types and Enumerations + + SrvExpRepCrit: + anyOf: + - type: string + enum: + - TRIGGER_CRITERIA + - COMMON_TRIGGER_CRITERIA + - 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: | + Represents information criteria to trigger service experience reporting. + Possible values are: + - TRIGGER_CRITERIA: Information criteria that can trigger service experience + reporting to a VAL server. + - COMMON_TRIGGER_CRITERIA: Information criteria that can trigger service experience + reporting to all VAL servers. diff --git a/TS26512_M1_MetricsReportingProvisioning.yaml b/TS26512_M1_MetricsReportingProvisioning.yaml index 6d51ce2..2c8d412 100644 --- a/TS26512_M1_MetricsReportingProvisioning.yaml +++ b/TS26512_M1_MetricsReportingProvisioning.yaml @@ -1,16 +1,16 @@ openapi: 3.0.0 info: title: M1_MetricsReportingProvisioning - version: 2.1.0 + version: 2.1.1 description: | 5GMS AF M1 Metrics Reporting Provisioning API - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. tags: - name: M1_MetricsReportingProvisioning description: '5G Media Streaming: Provisioning (M1) APIs: Metrics Reporting Provisioning' externalDocs: - description: 'TS 26.512 V17.6.0; 5G Media Streaming (5GMS); Protocols' + description: 'TS 26.512 V17.8.0; 5G Media Streaming (5GMS); Protocols' url: 'https://www.3gpp.org/ftp/Specs/archive/26_series/26.512/' servers: - url: '{apiRoot}/3gpp-m1/v2' @@ -126,6 +126,11 @@ components: properties: metricsReportingConfigurationId: $ref: 'TS26512_CommonData.yaml#/components/schemas/ResourceId' + sliceScope: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + minItems: 1 scheme: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' dataNetworkName: diff --git a/TS26512_M5_ServiceAccessInformation.yaml b/TS26512_M5_ServiceAccessInformation.yaml index 84b46d9..7ee8ead 100644 --- a/TS26512_M5_ServiceAccessInformation.yaml +++ b/TS26512_M5_ServiceAccessInformation.yaml @@ -1,16 +1,16 @@ openapi: 3.0.0 info: title: M5_ServiceAccessInformation - version: 2.4.0 + version: 2.4.1 description: | 5GMS AF M5 Service Access Information API - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. tags: - name: M5_ServiceAccessInformation description: '5G Media Streaming: Media Session Handling (M5) APIs: Service Access Information' externalDocs: - description: 'TS 26.512 V17.7.0; 5G Media Streaming (5GMS); Protocols' + description: 'TS 26.512 V17.8.0; 5G Media Streaming (5GMS); Protocols' url: 'https://www.3gpp.org/ftp/Specs/archive/26_series/26.512/' servers: - url: '{apiRoot}/3gpp-m5/v2' @@ -145,6 +145,11 @@ components: properties: serverAddresses: $ref: '#/components/schemas/ServerAddresses' + sliceScope: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + minItems: 1 scheme: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' dataNetworkName: diff --git a/TS28104_MdaNrm.yaml b/TS28104_MdaNrm.yaml index 758a190..9759ac7 100644 --- a/TS28104_MdaNrm.yaml +++ b/TS28104_MdaNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: MDA NRM - version: 18.0.0 + version: 18.3.0 description: >- OAS 3.0.1 specification of the MDA NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.104; MDA @@ -25,6 +25,18 @@ components: items: $ref: '#/components/schemas/MDAOutputPerMDAType' + AnalyticsScopeType: + oneOf: + - type: object + properties: + managedEntitiesScope: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + - type: object + properties: + areaScope: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoArea' + + MDAOutputPerMDAType: type: object properties: @@ -58,18 +70,7 @@ components: ReportingTarget: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - - AnalyticsScopeType: - oneOf: - - type: object - properties: - managedEntitiesScope: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' - - type: object - properties: - areaScope: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoArea' - + AnalyticsSchedule: oneOf: - type: object @@ -106,45 +107,25 @@ components: format: float minimum: 0 +#-------- Definition of types for name-containments ------ + SubNetwork-ncO-MdaNrm: + type: object + properties: + MDAFunction: + $ref: '#/components/schemas/MDAFunction-Multiple' + MDAReport: + $ref: '#/components/schemas/MDAReport-Multiple' + + ManagedElement-ncO-MdaNrm: + type: object + properties: + MDAFunction: + $ref: '#/components/schemas/MDAFunction-Multiple' #-------- Definition of abstract IOCs -------------------------------------------- #-------- Definition of concrete IOCs -------------------------------------------- - - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - MDAFunction: - $ref: '#/components/schemas/MDAFunction-Multiple' - MDAReport: - $ref: '#/components/schemas/MDAReport-Multiple' - - - ManagedElement-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - MDAFunction: - $ref: '#/components/schemas/MDAFunction-Multiple' - MDAFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -184,21 +165,14 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' stopTime: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + recommendationFilter: + $ref: '#/components/schemas/AnalyticsScopeType' MDAReport-Single: $ref: 'TS28104_MdaReport.yaml#/components/schemas/MDAReport' #-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' MDAFunction-Multiple: type: array items: @@ -217,9 +191,6 @@ components: resources-mdaNrm: oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - $ref: '#/components/schemas/MDAFunction-Single' - $ref: '#/components/schemas/MDARequest-Single' - $ref: '#/components/schemas/MDAReport-Single' diff --git a/TS28104_MdaReport.yaml b/TS28104_MdaReport.yaml index a81b09f..b57be4d 100644 --- a/TS28104_MdaReport.yaml +++ b/TS28104_MdaReport.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: MDA Report - version: 18.2.0 + version: 18.3.0 description: >- OAS 3.0.1 specification of the MDA Report - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.104; MDA Report @@ -24,8 +24,6 @@ components: type: array items: $ref: '#/components/schemas/MDAOutputEntry' - mDARequestRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' analyticsWindow: $ref: '#/components/schemas/TimeWindow' confidenceDegree: @@ -64,3 +62,5 @@ components: type: string mDAOutputs: $ref: '#/components/schemas/MDAOutputs' + mDARequestRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' diff --git a/TS28105_AiMlNrm.yaml b/TS28105_AiMlNrm.yaml index 71e2d38..b96ae1f 100644 --- a/TS28105_AiMlNrm.yaml +++ b/TS28105_AiMlNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: AI/ML NRM - version: 18.2.0 + version: 18.3.0 description: >- OAS 3.0.1 specification of the AI/ML NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.105; AI/ML Management @@ -27,15 +27,11 @@ components: type: string enum: - NOT_STARTED - - TRAINING_IN_PROGRESS + - IN_PROGRESS - SUSPENDED - FINISHED - CANCELLED - - PerformanceRequirements: - type: array - items: - $ref: '#/components/schemas/ModelPerformance' + - CANCELLING ModelPerformance: type: object @@ -45,79 +41,143 @@ components: performanceMetric: type: string performanceScore: - type: number - format: float + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' decisionConfidenceScore: - type: number - format: float + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' - TrainingProcessMonitor: + ProcessMonitor: description: >- - This data type is the "ProcessMonitor" data type defined in “genericNrm.yaml” with specialisations for usage in the "MLTrainingProcess". + This data type is the "ProcessMonitor" data type defined in “genericNrm.yaml” + with specialisations for usage in TS 28.105. type: object properties: - mLTrainingProcessId: - type: string status: type: string - enum: - - RUNNING - - CANCELLING - - CANCELLED - - SUSPENDED - - FINSHED progressPercentage: type: integer minimum: 0 maximum: 100 progressStateInfo: type: string - enum: - - COLLECTING_DATA - - PREPARING_TRAINING_DATA - - TRAINING resultStateInfo: type: string -#-------- Definition of abstract IOCs -------------------------------------------- - - + AIMLManagementPolicy: + description: >- + This data type represents the properties of a policy for AI/ML management. + type: object + properties: + thresholdList: + type: array + items: + $ref: 'TS28623_ThresholdMonitorNrm.yaml#/components/schemas/ThresholdInfo' -#-------- Definition of concrete IOCs -------------------------------------------- + SupportedPerfIndicator: + type: object + properties: + performanceIndicatorName: + type: string + isSupportedForTraining: + type: boolean + isSupportedForTesting: + type: boolean - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' + ManagedActivationScope: + oneOf: - type: object properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - MLTrainingFunction: - $ref: '#/components/schemas/MLTrainingFunction-Multiple' - MLEntityRepository: - $ref: '#/components/schemas/MLEntityRepository-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + dNList: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - type: object properties: - attributes: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-ncO' + timeWindow: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' - type: object properties: - MLTrainingFunction: - $ref: '#/components/schemas/MLTrainingFunction-Multiple' - MLEntityRepository: - $ref: '#/components/schemas/MLEntityRepository-Multiple' + geoPolygon: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoArea' + + MLCapabilityInfo: + type: object + properties: + inferenceType: + type: string + capabilityName: + type: string + mLCapabilityParameters: + description: A map (list of key-value pairs) for an inferenceType and capabilityName + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + + AvailMLCapabilityReport: + type: object + properties: + mLCapabilityVersionId: + type: array + items: + type: string + expectedPerformanceGains: + type: array + items: + $ref: '#/components/schemas/ModelPerformance' + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + InferenceOutput: + type: object + properties: + inferenceOutputId: + type: array + items: + type: string + inferenceType: + type: string + inferenceOutputTime: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + # FIXME, isOrder/isUnique both as True + inferencePerformance: + $ref: '#/components/schemas/ModelPerformance' + outputResult: + description: A map (list of key-value pairs) for Inference result name and it's value + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + +#-------- Definition of types for name-containments ------ + SubNetwork-ncO-AiMlNrm: + type: object + properties: + MLTrainingFunction: + $ref: '#/components/schemas/MLTrainingFunction-Multiple' + MLTestingFunction: + $ref: '#/components/schemas/MLTestingFunction-Multiple' + MLEntityRepository: + $ref: '#/components/schemas/MLEntityRepository-Multiple' + MLUpdateFunction: + $ref: '#/components/schemas/MLUpdateFunction-Multiple' + AIMLInferenceFunction: + $ref: '#/components/schemas/AIMLInferenceFunction-Multiple' + + ManagedElement-ncO-AiMlNrm: + type: object + properties: + MLTrainingFunction: + $ref: '#/components/schemas/MLTrainingFunction-Multiple' + MLTestingFunction: + $ref: '#/components/schemas/MLTestingFunction-Multiple' + MLEntityRepository: + $ref: '#/components/schemas/MLEntityRepository-Multiple' + MLUpdateFunction: + $ref: '#/components/schemas/MLUpdateFunction-Multiple' + AIMLInferenceFunction: + $ref: '#/components/schemas/AIMLInferenceFunction-Multiple' + +#-------- Definition of concrete IOCs -------------------------------------------- MLTrainingFunction-Single: allOf: @@ -130,7 +190,7 @@ components: - type: object properties: mLEntityRepositoryRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -140,6 +200,8 @@ components: $ref: '#/components/schemas/MLTrainingProcess-Multiple' MLTrainingReport: $ref: '#/components/schemas/MLTrainingReport-Multiple' + ThresholdMonitors: + $ref: 'TS28623_ThresholdMonitorNrm.yaml#/components/schemas/ThresholdMonitor-Multiple' MLTrainingRequest-Single: allOf: @@ -150,8 +212,6 @@ components: allOf: - type: object properties: - mLEntityId: - type: string inferenceType: type: string candidateTrainingDataSource: @@ -159,8 +219,7 @@ components: items: type: string trainingDataQualityScore: - type: number - format: float + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' trainingRequestSource: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' requestStatus: @@ -168,13 +227,17 @@ components: expectedRuntimeContext: $ref: '#/components/schemas/MLContext' performanceRequirements: - $ref: '#/components/schemas/PerformanceRequirements' + type: array + items: + $ref: '#/components/schemas/ModelPerformance' cancelRequest: type: boolean suspendRequest: - type: boolean + type: boolean mLEntityToTrainRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + mLEntityCoordinationGroupToTrainRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' MLTrainingProcess-Single: allOf: @@ -185,14 +248,17 @@ components: allOf: - type: object properties: - mLTrainingProcessId: - type: string priority: type: integer terminationConditions: type: string + enum: + - UPDATED_IN_INFERENCE_FUNCTION + - INFERENCE FUNCTION_TERMINATED + - INFERENCE FUNCTION_UPGRADED + - INFERENCE_CONTEXT_CHANGED progressStatus: - $ref: '#/components/schemas/TrainingProcessMonitor' + $ref: '#/components/schemas/ProcessMonitor' cancelProcess: type: boolean suspendProcess: @@ -201,9 +267,8 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' trainingReportRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - mLEnityGeneratedRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' MLTrainingReport-Single: allOf: @@ -214,32 +279,158 @@ components: allOf: - type: object properties: - mLEntityId: - type: string areConsumerTrainingDataUsed: - type: boolean + type: string + enum: + - ALL + - PARTIALLY + - NONE usedConsumerTrainingData: type: array items: type: string - modelConfidenceIndication: + modelconfidenceIndication: type: integer modelPerformanceTraining: type: array items: $ref: '#/components/schemas/ModelPerformance' + modelPerformanceValidation: + type: array + items: + $ref: '#/components/schemas/ModelPerformance' + dataRatioTrainingAndValidation: + type: integer areNewTrainingDataUsed: type: boolean trainingRequestRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' trainingProcessRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - trainingReportRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' lastTrainingRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' mLEnityGeneratedRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + mLEntityCoordinationGroupGeneratedRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + MLTestingFunction-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + MLTestingRequest: + $ref: '#/components/schemas/MLTestingRequest-Multiple' + MLTestingReport: + $ref: '#/components/schemas/MLTestingReport-Multiple' + + MLTestingRequest-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + requestStatus: + $ref: '#/components/schemas/RequestStatus' + cancelRequest: + type: boolean + suspendRequest: + type: boolean + mLEntityToTestRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + mLEntityCoordinationGroupToTestRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + + MLTestingReport-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + modelPerformanceTesting: + type: array + items: + $ref: '#/components/schemas/ModelPerformance' + mLTestingResult: + type: string + testingRequestRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + + MLEntityLoadingRequest-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + requestStatus: + $ref: '#/components/schemas/RequestStatus' + cancelRequest: + type: boolean + suspendRequest: + type: boolean + mLEntityToLoadRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + + MLEntityLoadingPolicy-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + inferenceType: + type: string + policyForLoading: + $ref: '#/components/schemas/AIMLManagementPolicy' + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + MLEntityLoadingProcess-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + progressStatus: + $ref: '#/components/schemas/ProcessMonitor' + cancelProcess: + type: boolean + suspendProcess: + type: boolean + resumeProcess: + type: boolean + MLEntityLoadingRequestRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + MLEntityLoadingPolicyRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + LoadedMLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' MLEntity-Single: allOf: @@ -260,7 +451,17 @@ components: trainingContext: $ref: '#/components/schemas/MLContext' runTimeContext: - $ref: '#/components/schemas/MLContext' + $ref: '#/components/schemas/MLContext' + supportedPerformanceIndicators: + $ref: '#/components/schemas/SupportedPerfIndicator' + mLCapabilitiesInfoList: + type: array + items: + $ref: '#/components/schemas/MLCapabilityInfo' + retrainingEventsMonitorRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + sourceTrainedMLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' MLEntityRepository-Single: allOf: @@ -270,21 +471,174 @@ components: attributes: type: object properties: - mLRepositoryId: - type: string + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + - type: object + properties: MLEntity: $ref: '#/components/schemas/MLEntity-Multiple' + MLEntityCoordinationGroup: + $ref: '#/components/schemas/MLEntityCoordinationGroup-Multiple' + + MLEntityCoordinationGroup-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + memberMLEntityRefList: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + ## 7.3a.4.1 IOC + MLUpdateFunction-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + availMLCapabilityReport: + $ref: '#/components/schemas/AvailMLCapabilityReport' + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + MLUpdateRequest: + $ref: '#/components/schemas/MLUpdateRequest-Multiple' + MLUpdateProcess: + $ref: '#/components/schemas/MLUpdateProcess-Multiple' + MLUpdateReport: + $ref: '#/components/schemas/MLUpdateReport-Multiple' + + MLUpdateRequest-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + performanceGainThreshold: + type: array + items: + $ref: '#/components/schemas/ModelPerformance' + newCapabilityVersionId: + type: array + items: + type: string + updateTimeDeadline: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' + requestStatus: + $ref: '#/components/schemas/RequestStatus' + mLUpdateReportingPeriod: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' + cancelRequest: + type: boolean + suspendRequest: + type: boolean + mLUpdateProcessRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + MLUpdateProcess-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + progressStatus: + $ref: '#/components/schemas/ProcessMonitor' + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + mLUpdateRequestRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + mLUpdateReportRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + + MLUpdateReport-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + updatedMLCapability: + $ref: '#/components/schemas/AvailMLCapabilityReport' + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + mLUpdateProcessRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + + AIMLInferenceFunction-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + activationStatus: + type: string + enum: + - ACTIVATED + - DEACTIVATED + managedActivationScope: + $ref: '#/components/schemas/ManagedActivationScope' + usedByFunctionRefList: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + mLEntityRef: # FIXME S5-240805,S5-240917 both define here + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' + - type: object + properties: + AIMLInferenceReport: + $ref: '#/components/schemas/AIMLInferenceReport-Multiple' + + AIMLInferenceReport-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - type: object + properties: + inferenceOutputs: #stage 2: attribute table name as: aimlInferenceOutputs FIXME + type: array + items: + $ref: '#/components/schemas/InferenceOutput' + minItems: 1 + mLEntityRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + AIMLInferenceEmulationFunction-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-Attr' + - type: object + properties: + AIMLInferenceEmulationReportRefs: # FIXME stage 2 of IOC AIMLInferenceEmulationReport missing + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' #-------- Definition of JSON arrays for name-contained IOCs ---------------------- - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' MLTrainingFunction-Multiple: type: array items: @@ -309,17 +663,84 @@ components: type: array items: $ref: '#/components/schemas/MLEntityRepository-Single' - + MLEntityCoordinationGroup-Multiple: + type: array + items: + $ref: '#/components/schemas/MLEntityCoordinationGroup-Single' + MLTestingFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/MLTestingFunction-Single' + MLTestingRequest-Multiple: + type: array + items: + $ref: '#/components/schemas/MLTestingRequest-Single' + MLTestingReport-Multiple: + type: array + items: + $ref: '#/components/schemas/MLTestingRequest-Single' + MLEntityLoadingRequest-Multiple: + type: array + items: + $ref: '#/components/schemas/MLEntityLoadingRequest-Single' + MLEntityLoadingProcess-Multiple: + type: array + items: + $ref: '#/components/schemas/MLEntityLoadingProcess-Single' + MLEntityLoadingPolicy-Multiple: + type: array + items: + $ref: '#/components/schemas/MLEntityLoadingPolicy-Single' + MLUpdateFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/MLUpdateFunction-Single' + MLUpdateRequest-Multiple: + type: array + items: + $ref: '#/components/schemas/MLUpdateRequest-Single' + MLUpdateProcess-Multiple: + type: array + items: + $ref: '#/components/schemas/MLUpdateProcess-Single' + MLUpdateReport-Multiple: + type: array + items: + $ref: '#/components/schemas/MLUpdateReport-Single' + AIMLInferenceFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AIMLInferenceFunction-Single' + AIMLInferenceReport-Multiple: + type: array + items: + $ref: '#/components/schemas/AIMLInferenceReport-Single' + AIMLInferenceEmulationFunction-Multiple: + type: array + items: + $ref: '#/components/schemas/AIMLInferenceEmulationFunction-Single' #-------- Definitions in TS 28.104 for TS 28.532 --------------------------------- resources-AiMlNrm: oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - - $ref: '#/components/schemas/MLTrainingFunction-Single' - $ref: '#/components/schemas/MLTrainingRequest-Single' - $ref: '#/components/schemas/MLTrainingProcess-Single' - $ref: '#/components/schemas/MLTrainingReport-Single' - $ref: '#/components/schemas/MLEntity-Single' - $ref: '#/components/schemas/MLEntityRepository-Single' + - $ref: '#/components/schemas/MLEntityCoordinationGroup-Single' + - $ref: '#/components/schemas/MLTestingFunction-Single' + - $ref: '#/components/schemas/MLTestingRequest-Single' + - $ref: '#/components/schemas/MLTestingReport-Single' + - $ref: '#/components/schemas/MLEntityLoadingRequest-Single' + - $ref: '#/components/schemas/MLEntityLoadingProcess-Single' + - $ref: '#/components/schemas/MLEntityLoadingPolicy-Single' + + - $ref: '#/components/schemas/MLUpdateFunction-Single' + - $ref: '#/components/schemas/MLUpdateRequest-Single' + - $ref: '#/components/schemas/MLUpdateProcess-Single' + - $ref: '#/components/schemas/MLUpdateReport-Single' + - $ref: '#/components/schemas/AIMLInferenceFunction-Single' + - $ref: '#/components/schemas/AIMLInferenceReport-Single' + - $ref: '#/components/schemas/AIMLInferenceEmulationFunction-Single' diff --git a/TS28111_FaultNotifications.yaml b/TS28111_FaultNotifications.yaml new file mode 100644 index 0000000..ffac86e --- /dev/null +++ b/TS28111_FaultNotifications.yaml @@ -0,0 +1,57 @@ +openapi: 3.0.1 +info: + title: Fault Management Notifications + version: 18.1.0 + description: >- + OAS 3.0.1 definition of the Fault Supervision MnS + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.111; Fault Management + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.111/ +servers: + - url: '{notificationRecipientAddress}' + variables: + notificationRecipientAddress: + description: Address on the MnS consumer side defined by NtfSubscriptionControl.notificationRecipientAddress. See 3GPP TS 28.622 clause 4.3.22 + default: http://exampleConsumer.com/notificationReceiver + MnSversion: + description: Version number of the OpenAPI definition + default: XXX +paths: + /: + post: + summary: Receive one of a set of alarm related notifications + description: >- + The MnS producer sends an alarm to the consumer. + This interface shall be implemented by the notification-receiver and + used by the notification-sender. + requestBody: + required: true + content: + application/json: + schema: + oneOf: + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyNewAlarm' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyNewSecAlarm' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyClearedAlarm' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyChangedAlarm' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyChangedAlarmGeneral' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyChangedSecAlarmGeneral' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyCorrelatedNotificationChanged' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyAckStateChanged' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyComments' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyPotentialFaultyAlarmList' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/NotifyAlarmListRebuilt' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response message + body is absent. + default: + description: Error case. + content: + application/json: + schema: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' diff --git a/TS28111_FaultNrm.yaml b/TS28111_FaultNrm.yaml new file mode 100644 index 0000000..f4ed7ce --- /dev/null +++ b/TS28111_FaultNrm.yaml @@ -0,0 +1,551 @@ +openapi: 3.0.1 +info: + title: Fault Management NRM + version: 18.1.0 + description: >- + OAS 3.0.1 definition of the Fault Supervision MnS + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.111; Fault Management + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.111/ +servers: + - url: '{MnSRoot}/FaultSupervisionMnS/{MnSversion}' + variables: + MnSRoot: + description: See subclause 4.4.3 of TS 32.158 + default: http://example.com/3GPPManagement + MnSversion: + description: Version number of the OpenAPI definition + default: XXX +paths: {} + +components: + schemas: + + #---- Definition of AlarmRecord ----------------------------------------------------# + + AlarmId: + type: string + AlarmType: + type: string + enum: + - COMMUNICATIONS_ALARM + - QUALITY_OF_SERVICE_ALARM + - PROCESSING_ERROR_ALARM + - EQUIPMENT_ALARM + - ENVIRONMENTAL_ALARM + - INTEGRITY_VIOLATION + - OPERATIONAL_VIOLATION + - PHYSICAL_VIOLATION + - SECURITY_SERVICE_OR_MECHANISM_VIOLATION + - TIME_DOMAIN_VIOLATION + ProbableCause: + description: >- + The value of the probable cause may be a specific standardized string, or any + vendor provided string. Probable cause strings are not standardized in the + present document. They may be added in a future version. Up to then the + mapping of the generic probable cause strings "PROBABLE_CAUSE_001" to + "PROBABLE_CAUSE_005" is vendor specific. + The value of the probable cause may also be an integer. The mapping of integer + values to probable causes is vendor specific. + oneOf: + - anyOf: + - type: string + enum: + - PROBABLE_CAUSE_001 + - PROBABLE_CAUSE_002 + - PROBABLE_CAUSE_003 + - PROBABLE_CAUSE_004 + - PROBABLE_CAUSE_005 + - type: string + - type: integer + SpecificProblem: + oneOf: + - type: string + - type: integer + PerceivedSeverity: + type: string + enum: + - INDETERMINATE + - CRITICAL + - MAJOR + - MINOR + - WARNING + - CLEARED + TrendIndication: + type: string + enum: + - MORE_SEVERE + - NO_CHANGE + - LESS_SEVERE + ThresholdHysteresis: + type: object + required: + - high + properties: + high: + oneOf: + - type: integer + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' + low: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' + ThresholdLevelInd: + oneOf: + - type: object + properties: + up: + $ref: '#/components/schemas/ThresholdHysteresis' + - type: object + properties: + down: + $ref: '#/components/schemas/ThresholdHysteresis' + ThresholdInfo: + type: object + properties: + observedMeasurement: + type: string + observedValue: + type: number + thresholdLevel: + $ref: '#/components/schemas/ThresholdLevelInd' + armTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + required: + - observedMeasurement + - observedValue + CorrelatedNotification: + type: object + properties: + sourceObjectInstance: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + notificationIds: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationId' + required: + - sourceObjectInstance + - notificationIds + CorrelatedNotifications: + type: array + items: + $ref: '#/components/schemas/CorrelatedNotification' + AckState: + type: string + enum: + - ACKNOWLEDGED + - UNACKNOWLEDGED + + AlarmRecord: + description: >- + The alarmId is not a property of an alarm record. It is used as key + in the map of alarm records instead. + type: object + properties: + # alarmId: + # $ref: '#/components/schemas/AlarmId' + objectInstance: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + notificationId: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationId' + alarmRaisedTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + alarmChangedTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + alarmClearedTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdinfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + + rootCauseIndicator: + type: boolean + + ackTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + ackUserId: + type: string + ackSystemId: + type: string + ackState: + $ref: '#/components/schemas/AckState' + + clearUserId: + type: string + clearSystemId: + type: string + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + + AlarmList-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AdministrativeState' + operationalState: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/OperationalState' + numOfAlarmRecords: + type: integer + lastModification: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + alarmRecords: + description: >- + This resource represents a map of alarm records. + The alarmIds are used as keys in the map. + type: object + additionalProperties: + $ref: '#/components/schemas/AlarmRecord' + + + #---- Definition of alarm notifications --------------------------------------------# + + AlarmNotificationTypes: + type: string + enum: + - notifyNewAlarm + - notifyChangedAlarm + - notifyChangedAlarmGeneral + - notifyAckStateChanged + - notifyCorrelatedNotificationChanged + - notifyComments + - notifyClearedAlarm + - notifyAlarmListRebuilt + - notifyPotentialFaultyAlarmList + AlarmListAlignmentRequirement: + type: string + enum: + - ALIGNMENT_REQUIRED + - ALIGNMENT_NOT_REQUIRED + + NotifyNewAlarm: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + backedUpStatus: + type: boolean + backUpObject: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + stateChangeDefinition: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + NotifyNewSecAlarm: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - serviceUser + - serviceProvider + - securityAlarmDetector + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + NotifyClearedAlarm: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + clearUserId: + type: string + clearSystemId: + type: string + NotifyChangedAlarm: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + NotifyChangedAlarmGeneral: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + specificProblem: + $ref: '#/components/schemas/SpecificProblem' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + backedUpStatus: + type: boolean + backUpObject: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + trendIndication: + $ref: '#/components/schemas/TrendIndication' + thresholdInfo: + $ref: '#/components/schemas/ThresholdInfo' + stateChangeDefinition: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeValueChangeSet' + monitoredAttributes: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + proposedRepairActions: + type: string + additionalText: + type: string + additionalInformation: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + changedAlarmAttributes: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + NotifyChangedSecAlarmGeneral: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - serviceUser + - serviceProvider + - securityAlarmDetector + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + additionalText: + type: string + additionalInformation: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + rootCauseIndicator: + type: boolean + serviceUser: + type: string + serviceProvider: + type: string + securityAlarmDetector: + type: string + changedAlarmAttributes: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' + NotifyCorrelatedNotificationChanged: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - correlatedNotifications + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + correlatedNotifications: + $ref: '#/components/schemas/CorrelatedNotifications' + rootCauseIndicator: + type: boolean + NotifyAckStateChanged: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - ackState + - ackUserId + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + ackState: + $ref: '#/components/schemas/AckState' + ackUserId: + type: string + ackSystemId: + type: string + NotifyComments: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - alarmId + - alarmType + - probableCause + - perceivedSeverity + - comments + properties: + alarmId: + $ref: '#/components/schemas/AlarmId' + alarmType: + $ref: '#/components/schemas/AlarmType' + probableCause: + $ref: '#/components/schemas/ProbableCause' + perceivedSeverity: + $ref: '#/components/schemas/PerceivedSeverity' + comments: + $ref: '#/components/schemas/Comments' + NotifyPotentialFaultyAlarmList: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + NotifyAlarmListRebuilt: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - reason + properties: + reason: + type: string + alarmListAlignmentRequirement: + $ref: '#/components/schemas/AlarmListAlignmentRequirement' + + #---- Definition of resources ------------------------------------------------------# + + Comment: + type: object + properties: + commentTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + commentUserId: + type: string + commentSystemId: + type: string + commentText: + type: string + Comments: + description: >- + Collection of comments. The comment identifiers are allocated by the + MnS producer and used as key in the map. + type: object + additionalProperties: + $ref: '#/components/schemas/Comment' diff --git a/TS28312_IntentExpectations.yaml b/TS28312_IntentExpectations.yaml index b0c3507..b48f7af 100644 --- a/TS28312_IntentExpectations.yaml +++ b/TS28312_IntentExpectations.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Scenario specific Intent Expectations - version: 18.2.0 + version: 18.3.0 description: >- OAS 3.0.1 definition of scenario specific Intent Expectations - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.312; Intent driven management services for mobile networks @@ -89,7 +89,7 @@ components: expectationVerb: $ref: 'TS28312_IntentNrm.yaml#/components/schemas/ExpectationVerb' expectationObject: - $ref: '#/components/schemas/ServiceSupportExpectationObject' + $ref: '#/components/schemas/EdgeServiceSupportExpectationObject' expectationTargets: type: array items: @@ -146,8 +146,6 @@ components: - $ref: '#/components/schemas/StartTimeContext' - $ref: '#/components/schemas/ResourceSharingLevelContext' - $ref: "TS28312_IntentNrm.yaml#/components/schemas/Context" - expectationfulfilmentInfo: - $ref: "TS28312_IntentNrm.yaml#/components/schemas/FulfilmentInfo" required: - expectationId #-------Definition of the IntentExpectation dataType ----------# @@ -196,7 +194,7 @@ components: - $ref: '#/components/schemas/CoverageAreaPolygonContext' - $ref: '#/components/schemas/ServiceTypeContext' - $ref: 'TS28312_IntentNrm.yaml#/components/schemas/Context' - ServiceSupportExpectationObject: + EdgeServiceSupportExpectationObject: description: >- This data type is the "ExpectationObject" data type with specialisations for EdgeServiceSupportExpectation type: object @@ -212,7 +210,7 @@ components: items: type: object oneOf: - - $ref: '#/components/schemas/EdgeIdenfiticationIdContext' + - $ref: '#/components/schemas/EdgeIdentificationIdContext' - $ref: '#/components/schemas/EdgeIdentificationLocContext' - $ref: '#/components/schemas/CoverageAreaTAContext' - $ref: 'TS28312_IntentNrm.yaml#/components/schemas/Context' @@ -801,7 +799,7 @@ components: $ref: 'TS28312_IntentNrm.yaml#/components/schemas/Frequency' UlFrequencyContext: description: >- - This data type is the "Context" data type with specialisations for Object context "DLFrequencyContext". + This data type is the "Context" data type with specialisations for Object context "ULFrequencyContext". It describes the uplink frequency information (RF reference frequencies and/ or the frequency operating band) supported by the RAN SubNetwork that the intent expectation is applied. type: object @@ -856,7 +854,7 @@ components: type: array items: $ref: "TS28312_IntentNrm.yaml#/components/schemas/UEGroup" - EdgeIdenfiticationIdContext: + EdgeIdentificationIdContext: description: >- This data type is the "ObjectContext" data type with specialisations for EdgeIdentificationIdContext type: object diff --git a/TS28312_IntentNrm.yaml b/TS28312_IntentNrm.yaml index 915541a..130494e 100644 --- a/TS28312_IntentNrm.yaml +++ b/TS28312_IntentNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Intent NRM - version: 18.2.0 + version: 18.3.0 description: >- OAS 3.0.1 definition of the Intent NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.312; Intent driven management services for mobile networks @@ -12,24 +12,16 @@ externalDocs: paths: {} components: schemas: + + #-------- Definition of types for name-containments ------ + SubNetwork-ncO-IntentNrm: + type: object + properties: + IntentHandlingFunction: + $ref: '#/components/schemas/IntentHandlingFunction-Multiple' #-------Definition of generic IOCs ----------# - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - IntentHandlingFunction: - $ref: '#/components/schemas/IntentHandlingFunction-Multiple' - Intent-Single: description: >- This IOC represents the properties of an Intent driven management information between MnS consumer and MnS producer. @@ -343,7 +335,7 @@ components: #-------Definition of the generic ExpectationFulfilmentResult dataType----------------# ExpectationFulfilmentResult: description: >- - It includes the expectationFulfilmentInfo and targetFulfilmetResults for each IntentExpectation. + It includes the expectationFulfilmentInfo and targetFulfilmentResults for each IntentExpectation. type: object properties: expectaitonId: @@ -397,6 +389,12 @@ components: description: >- This will be present if the value of conflictType is TARGET_CONFLICT. It describes the targetName of the conflicting ExpectationTarget with an IntentExpectation type: string + recommendedSolutions: + type: string + enum: + - MODIFY + - DELETE + #-------Definition of the concrete IntentConflictReport dataType----------------# #-------Definition of the generic IntentFeasibilityCheckReport dataType----------------# @@ -441,11 +439,6 @@ components: #------Definition of JSON arrays for name-contained IOCs ---------------# - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - Intent-Multiple: type: array items: @@ -467,7 +460,6 @@ components: #----- Definitions in TS 28.312 for TS 28.532 --------------------------# resources-intentNrm: oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - $ref: '#/components/schemas/IntentHandlingFunction-Single' - $ref: '#/components/schemas/Intent-Single' - $ref: '#/components/schemas/IntentReport-Single' diff --git a/TS28317_RanScNrm.yaml b/TS28317_RanScNrm.yaml index ed6566f..3b19734 100644 --- a/TS28317_RanScNrm.yaml +++ b/TS28317_RanScNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: RANSC NRM - version: 18.0.0 + version: 18.1.0 description: >- OAS 3.0.1 definition of the RANSC NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.317; Self-configuration of Radio Access Network Entities (RAN NEs) @@ -13,24 +13,17 @@ paths: {} components: schemas: +#-------- Definition of types for name-containments ------ + SubNetwork-ncO-RanScNrm: + type: object + properties: + ScMgmtProfile: + $ref: '#/components/schemas/ScMgmtProfile-Multiple' + Sc_Process: + $ref: '#/components/schemas/Sc_Process-Multiple' + #-------Definition of IOCs ----------# - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ScMgmtProfile: - $ref: '#/components/schemas/ScMgmtProfile-Multiple' - Sc_Process: - $ref: '#/components/schemas/Sc_Process-Multiple' - + ScMgmtProfile-Single: description: >- The ScMgmtProfile represents MnS Consumer's requirements for self-configuration management @@ -77,7 +70,7 @@ components: #-------Definition of Data types ----------# NEType: - type: integer + type: string description: It defines the type of RAN NE GnbId: type: integer @@ -93,13 +86,14 @@ components: oneOf: - $ref: '#/components/schemas/EnbId' - $ref: '#/components/schemas/GnbId' + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' NEInfomration: description: >- It defines the NE Type or the NE instance for which this ScMgmtProfile instance is valid. - oneOf: + anyOf: - $ref: '#/components/schemas/NEType' - - $ref: '#/components/schemas/NEIdentification' + - $ref: '#/components/schemas/NEIdentification' ScProcessMonitor: description: >- This data type is the "ProcessMonitor" data type with specialisations @@ -131,7 +125,7 @@ components: - PREPARE_BASIC_CONFIGURATION_AND_OAMLINK - RETRIEVE_CONFIGURATION_DATA - SETUP_PRECONFIGURED_SIGNALLING_LINKS - - TSET_FINAL_STATE_OF_NE + - SET_FINAL_STATE_OF_NE resultStateInfo: oneOf: - type: string @@ -150,10 +144,6 @@ components: #-------Definition of Data types ----------# #------Definition of JSON arrays for name-contained IOCs ---------------# - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' ScMgmtProfile-Multiple: type: array items: @@ -168,7 +158,6 @@ components: #----- Definitions in TS 28.317 for TS 28.532 --------------------------# resources-RanScNrm: oneOf: - - $ref: '#/components/schemas/SubNetwork-Single' - $ref: '#/components/schemas/ScMgmtProfile-Single' - $ref: '#/components/schemas/Sc_Process-Single' diff --git a/TS28318_DsoNrm.yaml b/TS28318_DsoNrm.yaml new file mode 100644 index 0000000..25c3116 --- /dev/null +++ b/TS28318_DsoNrm.yaml @@ -0,0 +1,110 @@ +openapi: 3.0.1 +info: + title: 3GPP NRM + version: 18.5.0 + description: >- + OAS 3.0.1 specification of the OutageAndRecoveryInfo NRM + © 2024, 3GPP Organizational OutageAndRecoveryInfo Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.318; OutageAndRecoveryInfo NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.318/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + EnergyServiceLocation: + type: object + properties: + CGI: + type: string + energySupplyId: + type: string + + + +#-------- Definition of concrete IOCs -------------------------------------------- + MnS: + oneOf: + - type: object + properties: + SubNetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + + SubNetwork-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' + - type: object + properties: + Subnetwork: + $ref: '#/components/schemas/SubNetwork-Multiple' + OutageAndRecoveryInfo: + $ref: '#/components/schemas/OutageAndRecoveryInfo-Multiple' + DsoThresholdMonitor: + $ref: '#/components/schemas/DsoThresholdMonitor-Multiple' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' + + OutageAndRecoveryInfo-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + outageStartTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + expectedOutageEndTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + dsoRapidInterventionTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + dsoRapidInterventionDuration: + type: integer + mnoInterventionTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + mnoInterventionDuration: + type: integer + mnoMaxServiceDuration: + type: integer + affectedArea: + $ref: '#/components/schemas/EnergyServiceLocation' + isAffectedAreaPriority: + type: boolean + actualOutageEndTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + DsoThresholdMonitor-Single: + allOf: + - $ref: 'TS28623_ThresholdMonitorNrm.yaml#/components/schemas/ThresholdMonitor-Single' + - type: object + properties: + targetThresholdLocation: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AreaOfInterest' + + + +#-------- Definition of JSON arrays for name-contained IOCs ---------------------- + + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + OutageAndRecoveryInfo-Multiple: + type: array + items: + $ref: '#/components/schemas/OutageAndRecoveryInfo-Single' + DsoThresholdMonitor-Multiple: + type: array + items: + $ref: '#/components/schemas/DsoThresholdMonitor-Single' + +#--------------------------------- Definition ------------------------------------ + + resources-DSORecovery: + oneOf: + - $ref: '#/components/schemas/MnS' + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/OutageAndRecoveryInfo-Single' + - $ref: '#/components/schemas/DsoThresholdMonitor-Single' diff --git a/TS28319_MsacNrm.yaml b/TS28319_MsacNrm.yaml new file mode 100644 index 0000000..ac65e3e --- /dev/null +++ b/TS28319_MsacNrm.yaml @@ -0,0 +1,87 @@ + +openapi: 3.0.1 +info: + title: MSAC NRM + version: 18.0.0 + description: >- + OAS 3.0.1 definition of the MSAC NRM + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.319; MSAC NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.319/ +paths: {} +components: + schemas: + +#-------- Definition of types----------------------------------------------------- + +#-------- Definition of concrete IOCs -------------------------------------------- + + Identity-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + identityType: + type: string + enum: + - USERNAME + - EMAIL_ADDRESS + - PHONE_NUMBER + - IP_ADDRESS + - MACHINEUSER + identityName: + type: string + credential: + type: string + roleRefList: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + Role-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + roleName: + type: string + accessRulesList: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + AccessRule-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + ruleName: + type: string + resources: + type: string + operations: + type: array + items: + type: string + actions: + type: string + enum: + - ALLOW + - DENY + componentCData: + type: array + items: + type: string + + resources-msacNrm: + oneOf: + - $ref: '#/components/schemas/Identity-Single' + - $ref: '#/components/schemas/Role-Single' + - $ref: '#/components/schemas/AccessRule-Single' diff --git a/TS28532_FileDataReportingMnS.yaml b/TS28532_FileDataReportingMnS.yaml index 176070c..4138a3c 100644 --- a/TS28532_FileDataReportingMnS.yaml +++ b/TS28532_FileDataReportingMnS.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: File Data Reporting MnS - version: 18.1.0 + version: 18.2.0 description: >- OAS 3.0.1 definition of the File Data Reporting MnS - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.532; Generic management services @@ -80,7 +80,7 @@ paths: content: application/json: schema: - $ref: 'TS28532_FaultMnS.yaml#/components/schemas/Subscription' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Subscription' responses: '201': description: >- @@ -90,7 +90,7 @@ paths: content: application/json: schema: - $ref: 'TS28532_FaultMnS.yaml#/components/schemas/Subscription' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Subscription' headers: Location: description: URI of the newly created subscription resource diff --git a/TS28532_ProvMnS.yaml b/TS28532_ProvMnS.yaml index a807620..27e0275 100644 --- a/TS28532_ProvMnS.yaml +++ b/TS28532_ProvMnS.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Provisioning MnS - version: 18.1.0 + version: 18.2.0 description: >- OAS 3.0.1 definition of the Provisioning MnS - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.532; Generic management services @@ -82,7 +82,7 @@ paths: content: application/json: schema: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponseDefault' callbacks: notifyMOICreation: '{request.body#/notificationRecipientAddress}': @@ -147,6 +147,27 @@ paths: application/json: schema: $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' + notifyEvent: + '{request.body#/notificationRecipientAddress}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NotifyEvent' + responses: + '204': + description: >- + Success case ("204 No Content"). + The notification is successfully delivered. The response + has no message body. + default: + description: Error case. + content: + application/json: + schema: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' notifyMOIChanges: '{request.body#/notificationRecipientAddress}': post: @@ -195,8 +216,7 @@ paths: This parameter reduces the targeted set of resources by applying a filter to the scoped set of resource representations. Only resource representations for which the filter construct evaluates to "true" - are targeted. No filter language is specified in the present - document. + are targeted. required: false schema: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Filter' @@ -224,6 +244,14 @@ paths: type: string style: form explode: false + - name: dataNodeSelector + in: query + description: >- + This parameter contains an expression allowing to conditionally + select data nodes. + required: false + schema: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Filter' responses: '200': description: >- @@ -250,7 +278,7 @@ paths: content: application/json: schema: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponseGet' patch: summary: Patches one or multiple resources description: >- @@ -307,7 +335,9 @@ paths: content: application/json: schema: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' + oneOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponseDefault' + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponsePatch' delete: summary: Deletes one resource description: >- @@ -324,7 +354,7 @@ paths: content: application/json: schema: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponse' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/ErrorResponseDefault' components: schemas: CmNotificationTypes: @@ -333,6 +363,7 @@ components: - notifyMOICreation - notifyMOIDeletion - notifyMOIAttributeValueChanges + - notifyEvent - notifyMOIChanges SourceIndicator: type: string @@ -397,7 +428,16 @@ components: - $ref: 'TS28104_MdaNrm.yaml#/components/schemas/resources-mdaNrm' - $ref: 'TS28105_AiMlNrm.yaml#/components/schemas/resources-AiMlNrm' - $ref: 'TS28538_EdgeNrm.yaml#/components/schemas/resources-edgeNrm' - - $ref: 'TS28317_RanScNrm.yaml#/components/schemas/resources-RanScNrm' + - $ref: 'TS28317_RanScNrm.yaml#/components/schemas/resources-RanScNrm' + - $ref: 'TS28623_FileManagementNrm.yaml#/components/schemas/resources-fileMgmtNrm' + - $ref: 'TS28623_ManagementDataCollectionNrm.yaml#/components/schemas/resources-mgmtDataCollectionNrm' + - $ref: 'TS28623_MnSRegistryNrm.yaml#/components/schemas/resources-mnSRegistryNrm' + - $ref: 'TS28623_PmControlNrm.yaml#/components/schemas/resources-pmControlNrm' + - $ref: 'TS28623_QoEMeasurementCollectionNrm.yaml#/components/schemas/resources-qoEMeasuremetCollectionNrm' + - $ref: 'TS28623_SubscriptionControlNrm.yaml#/components/schemas/resources-subscriptionControlNrm' + - $ref: 'TS28623_ThresholdMonitorNrm.yaml#/components/schemas/resources-thresholdMonitorNrm' + - $ref: 'TS28623_TraceControlNrm.yaml#/components/schemas/resources-traceControlNrm' + - $ref: 'TS28319_MsacNrm.yaml#/components/schemas/resources-msacNrm' Scope: type: object properties: @@ -489,6 +529,19 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeValueChangeSet' required: - attributeListValueChanges + NotifyEvent: + allOf: + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' + - type: object + required: + - specificProblem + properties: + specificProblem: + $ref: 'TS28532_FaultMnS.yaml#/components/schemas/SpecificProblem' + additionalText: + type: string + additionalInformation: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' NotifyMoiChanges: allOf: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationHeader' diff --git a/TS28536_CoslaNrm.yaml b/TS28536_CoslaNrm.yaml index 3ae269c..99a1b50 100644 --- a/TS28536_CoslaNrm.yaml +++ b/TS28536_CoslaNrm.yaml @@ -2,10 +2,10 @@ openapi: 3.0.1 info: title: coslaNrm - version: 17.3.0 + version: 17.4.0 description: >- OAS 3.0.1 specification of the Cosla NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: @@ -126,45 +126,34 @@ components: taiList: $ref: 'TS28541_NrNrm.yaml#/components/schemas/TaiList' +#-------- Definition of types for name-containments ------ + SubNetwork-ncO-CoslaNrm: + type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + + ManagedElement-ncO-CoslaNrm: + type: object + properties: + AssuranceClosedControlLoop: + $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + #-------- Definition of concrete IOCs -------------------------------------------- MnS: oneOf: - type: object properties: SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' + type: array + items: + $ref: '#/components/schemas/SubNetwork-ncO-CoslaNrm' - type: object properties: ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - AssuranceClosedControlLoop: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AssuranceClosedControlLoop: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple' + type: array + items: + $ref: '#/components/schemas/ManagedElement-ncO-CoslaNrm' AssuranceClosedControlLoop-Single: allOf: @@ -222,16 +211,7 @@ components: $ref: '#/components/schemas/AssuranceGoalStatusList' #-------- Definition of JSON arrays for name-contained IOCs ---------------------- - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' - + AssuranceClosedControlLoop-Multiple: type: array items: @@ -250,5 +230,3 @@ components: - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single' - $ref: '#/components/schemas/AssuranceGoal-Single' - $ref: '#/components/schemas/AssuranceReport-Single' - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' diff --git a/TS28538_EdgeNrm.yaml b/TS28538_EdgeNrm.yaml index cb10b91..6745e3f 100644 --- a/TS28538_EdgeNrm.yaml +++ b/TS28538_EdgeNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: 3GPP Edge NRM - version: 18.5.0 + version: 18.6.0 description: >- OAS 3.0.1 specification of the Edge NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.538; Edge NRM @@ -42,7 +42,7 @@ components: GeographicalCoordinates: type: object properties: - lattitude: + latitude: type: integer longitude: type: integer @@ -71,7 +71,7 @@ components: type: integer virtualDisk: type: integer - virutalCPU: + virtualCPU: type: string vnfdId: type: string @@ -97,20 +97,16 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' EASServicePermission: type: string - description: any of enumrated value + description: any of enumerated value enum: - TRIAL - SILVER - GOLD EASFeature: type: string - description: any of enumrated value - enum: - - SINGLE - - MULTIPLE EASStatus: type: string - description: any of enumrated value + description: any of enumerated value enum: - ENABLED - DISABLED @@ -146,44 +142,30 @@ components: - FUTURE futuristicTriggerTime: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' - relocationPolicy: - type: string - description: any of enumrated value - enum: - - YES - - NO - - YESwNOTIFY AvailableEDNList: type: object properties: resourceQuota: $ref: '#/components/schemas/VirtualResource' +#-------- Definition of types for name-containments ------ + SubNetwork-ncO-EdgeNrm: + type: object + properties: + ECSFunction: + $ref: '#/components/schemas/ECSFunction-Multiple' + EdgeDataNetwork: + $ref: '#/components/schemas/EdgeDataNetwork-Multiple' + #-------- Definition of concrete IOCs -------------------------------------------- MnS: oneOf: - type: object properties: SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - type: object - properties: - Subnetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - ECSFunction: - $ref: '#/components/schemas/ECSFunction-Multiple' - EdgeDataNetwork: - $ref: '#/components/schemas/EdgeDataNetwork-Multiple' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' + type: array + items: + $ref: '#/components/schemas/SubNetwork-ncO-EdgeNrm' EdgeDataNetwork-Single: allOf: @@ -283,7 +265,7 @@ components: $ref: '#/components/schemas/SoftwareImageInfo' serviceContinuitySupport: type: boolean - eASFunctonRef: + eASFunctionRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' @@ -329,13 +311,19 @@ components: eASFeature: $ref: '#/components/schemas/EASFeature' relocationPolicy: - $ref: '#/components/schemas/EASFeature' - federationID: type: string - reservationID: + description: any of enumrated value + enum: + - YES + - NO + - YESwNOTIFY + federationID: type: string - - ResourceReservationJob: + eASDeploymentMonitor: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ProcessMonitor' + reservationJobRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + EASResourceReservationJob-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - type: object @@ -347,7 +335,7 @@ components: items: $ref: '#/components/schemas/ResourceReservationRequirement' requestedReservationExpiration: - type: string + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' resourceReservationStatus: type: array items: @@ -381,8 +369,6 @@ components: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - type: object properties: - availableVirtualResource: - $ref: '#/components/schemas/VirtualResource' availableEASResource: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' edgeDataNetworkRef: @@ -390,11 +376,7 @@ components: #-------- Definition of JSON arrays for name-contained IOCs ---------------------- - - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' + EASFunction-Multiple: type: array items: @@ -434,7 +416,6 @@ components: resources-edgeNrm: oneOf: - $ref: '#/components/schemas/MnS' - - $ref: '#/components/schemas/SubNetwork-Single' - $ref: '#/components/schemas/EASFunction-Single' - $ref: '#/components/schemas/ECSFunction-Single' - $ref: '#/components/schemas/EESFunction-Single' @@ -444,3 +425,4 @@ components: - $ref: '#/components/schemas/EdgeFederation-Single' - $ref: '#/components/schemas/OperatorEdgeFederation-Single' - $ref: '#/components/schemas/OperatorEdgeDataNetwork-Single' + - $ref: '#/components/schemas/EASResourceReservationJob-Single' diff --git a/TS28541_5GcNrm.yaml b/TS28541_5GcNrm.yaml index 5a7ba35..9379ea4 100644 --- a/TS28541_5GcNrm.yaml +++ b/TS28541_5GcNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: 3GPP 5GC NRM - version: 18.6.0 + version: 18.7.0 description: >- OAS 3.0.1 specification of the 5GC NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.541; 5G NRM, 5GC NRM @@ -608,8 +608,21 @@ components: dnaiList: type: array items: - type: string - + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + minItems: 1 + + dnaiSatelliteMapping: + type: object + properties: + dnaiList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + minItems: 1 + geoSatelliteId: + type: string + pattern: '^[0-9]{5}$' + SnssaiSmfInfoItem: type: object properties: @@ -2049,18 +2062,18 @@ components: $ref: '#/components/schemas/NwdafInfo' minProperties: 1 minProperties: 1 - # servedPcscfInfoList: - # description: A map (list of key-value pairs) where nfInstanceId serves as key - # type: object - # additionalProperties: - # description: A map (list of key-value pairs) where a valid JSON string serves as key - # type: object - # additionalProperties: - # anyOf: - # - $ref: '#/components/schemas/PcscfInfo' - # - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject' - # minProperties: 1 - # minProperties: 1 + servedPcscfInfoList: + description: A map (list of key-value pairs) where nfInstanceId serves as key + type: object + additionalProperties: + description: A map (list of key-value pairs) where a valid JSON string serves as key + type: object + additionalProperties: + anyOf: + - $ref: '#/components/schemas/PcscfInfo' + - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject' + minProperties: 1 + minProperties: 1 servedGmlcInfo: description: A map (list of key-value pairs) where nfInstanceId serves as key type: object @@ -2077,12 +2090,12 @@ components: - $ref: '#/components/schemas/LmfInfo' - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject' minProperties: 1 - # servedNfInfo: - # description: A map (list of key-value pairs) where nfInstanceId serves as key - # type: object - # additionalProperties: - # $ref: '#/components/schemas/NfInfo' - # minProperties: 1 + servedNfInfo: + description: A map (list of key-value pairs) where nfInstanceId serves as key + type: object + additionalProperties: + $ref: '#/components/schemas/NfInfo' + minProperties: 1 servedHssInfoList: description: A map (list of key-value pairs) where nfInstanceId serves as key type: object @@ -2212,6 +2225,60 @@ components: additionalProperties: $ref: '#/components/schemas/NssaafInfo' minProperties: 1 + SatelliteBackhaulInfo: + description: defines the list of satellite backhaul information + type: object + properties: + globalRanNodeID: + $ref: '#/components/schemas/GlobalRanNodeID' + SatelliteBackhaulCategory: + anyOf: + - type: string + enum: + - GEO + - MEO + - LEO + - OTHER_SAT + - DYNAMIC_GEO + - DYNAMIC_MEO + - DYNAMIC_LEO + - DYNAMIC_OTHER_SAT + - NON_SATELLITE + - type: string + geoSatelliteId: + type: string + pattern: '^[0-9]{5}$' + GlobalRanNodeID: + description: globally identification of an NG-RAN node + type: object + oneOf: + - required: [ pLmnId, n3IwfId] + - required: [ plmnId, gNbId] + - required: [ pLmnId, ngeNbId] + - required: [ plmnId, wagfId] + - required: [ pLmnId, tngfId] + - required: [ plmnId, twifId] + properties: + pLmnId: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' + n3IwfId: + type: string + pattern: '^[A-Fa-f0-9]+$' + gNbId: + type: integer + minimum: 0 + maximum: 4294967295 + ngeNbId: + type: string + pattern: '^(MacroNGeNB-[A-Fa-f0-9]{5}|LMacroNGeNB-[A-Fa-f0-9]{6}|SMacroNGeNB-[A-Fa-f0-9]{5})$' + wagfId: + type: string + pattern: '^[A-Fa-f0-9]+$' + tngfId: + type: string + pattern: '^[A-Fa-f0-9]+$' + twifId: + type: string NTNPLMNRestrictionsInfo: description: restrictions per PLMN that relates to non-terrestrial network access type: object @@ -2761,130 +2828,177 @@ components: minItems: 1 required: - msisdnRanges + SliceExpiryInfo : + description: Slice validity + type: object + properties: + pLMNInfo: + $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnInfo' + expiryTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + PcscfInfo: + description: Information of a P-CSCF NF Instance + type: object + properties: + accessType: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' + minItems: 1 + dnnList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + minItems: 1 + gmFqdn: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Fqdn' + gmIpv4Addresses: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Ipv4Addr' + minItems: 1 + gmIpv6Addresses: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Ipv6Addr' + minItems: 1 + mwFqdn: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Fqdn' + mwIpv4Addresses: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Ipv4Addr' + minItems: 1 + mwIpv6Addresses: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Ipv6Addr' + minItems: 1 + servedIpv4AddressRanges: + type: array + items: + $ref: '#/components/schemas/Ipv4AddressRange' + minItems: 1 + servedIpv6PrefixRanges: + type: array + items: + $ref: '#/components/schemas/Ipv6PrefixRange' + minItems: 1 + NfInfo: + description: Information of a generic NF Instance + type: object + properties: + nfType: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/NFType' + +#-------- Definition of types for name-containments ------ + SubNetwork-ncO-5GcNrm: + type: object + properties: + ExternalAmfFunction: + $ref: '#/components/schemas/ExternalAmfFunction-Multiple' + ExternalNrfFunction: + $ref: '#/components/schemas/ExternalNrfFunction-Multiple' + ExternalNssfFunction: + $ref: '#/components/schemas/ExternalNssfFunction-Multiple' + AmfSet: + $ref: '#/components/schemas/AmfSet-Multiple' + AmfRegion: + $ref: '#/components/schemas/AmfRegion-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + EcmConnectionInfo: + $ref: '#/components/schemas/EcmConnectionInfo-Multiple' + + ManagedElement-ncO-5GcNrm: + type: object + properties: + AmfFunction: + $ref: '#/components/schemas/AmfFunction-Multiple' + SmfFunction: + $ref: '#/components/schemas/SmfFunction-Multiple' + UpfFunction: + $ref: '#/components/schemas/UpfFunction-Multiple' + N3iwfFunction: + $ref: '#/components/schemas/N3iwfFunction-Multiple' + PcfFunction: + $ref: '#/components/schemas/PcfFunction-Multiple' + AusfFunction: + $ref: '#/components/schemas/AusfFunction-Multiple' + UdmFunction: + $ref: '#/components/schemas/UdmFunction-Multiple' + UdrFunction: + $ref: '#/components/schemas/UdrFunction-Multiple' + UdsfFunction: + $ref: '#/components/schemas/UdsfFunction-Multiple' + NrfFunction: + $ref: '#/components/schemas/NrfFunction-Multiple' + NssfFunction: + $ref: '#/components/schemas/NssfFunction-Multiple' + SmsfFunction: + $ref: '#/components/schemas/SmsfFunction-Multiple' + LmfFunction: + $ref: '#/components/schemas/LmfFunction-Multiple' + NgeirFunction: + $ref: '#/components/schemas/NgeirFunction-Multiple' + SeppFunction: + $ref: '#/components/schemas/SeppFunction-Multiple' + NwdafFunction: + $ref: '#/components/schemas/NwdafFunction-Multiple' + ScpFunction: + $ref: '#/components/schemas/ScpFunction-Multiple' + NefFunction: + $ref: '#/components/schemas/NefFunction-Multiple' + Configurable5QISet: + $ref: '#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: '#/components/schemas/Dynamic5QISet-Multiple' + EcmConnectionInfo: + $ref: '#/components/schemas/EcmConnectionInfo-Multiple' + EASDFFunction: + $ref: '#/components/schemas/EASDFFunction-Multiple' + NSSAAFFunction: + $ref: '#/components/schemas/NssaafFunction-Multiple' + AFFunction: + $ref: '#/components/schemas/AfFunction-Multiple' + DCCFFunction: + $ref: '#/components/schemas/DccfFunction-Multiple' + ChfFunction: + $ref: '#/components/schemas/ChfFunction-Multiple' + MFAFFunction: + $ref: '#/components/schemas/MfafFunction-Multiple' + GMLCFunction: + $ref: '#/components/schemas/GmlcFunction-Multiple' + TSCTSFFunction: + $ref: '#/components/schemas/TsctsfFunction-Multiple' + AANFFunction: + $ref: '#/components/schemas/AanfFunction-Multiple' + BSFFunction: + $ref: '#/components/schemas/BsfFunction-Multiple' + MBSMFFunction: + $ref: '#/components/schemas/MbSmfFunction-Multiple' + MBUPFFunction: + $ref: '#/components/schemas/MbUpfFunction-Multiple' + MNPFFunction: + $ref: '#/components/schemas/MnpfFunction-Multiple' #-------- Definition of concrete IOCs -------------------------------------------- - ProvMnS: + MnS: oneOf: - type: object properties: SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - - type: object - properties: - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' + type: array + items: + $ref: '#/components/schemas/SubNetwork-ncO-5GcNrm' - type: object properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - ExternalAmfFunction: - $ref: '#/components/schemas/ExternalAmfFunction-Multiple' - ExternalNrfFunction: - $ref: '#/components/schemas/ExternalNrfFunction-Multiple' - ExternalNssfFunction: - $ref: '#/components/schemas/ExternalNssfFunction-Multiple' - AmfSet: - $ref: '#/components/schemas/AmfSet-Multiple' - AmfRegion: - $ref: '#/components/schemas/AmfRegion-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - EcmConnectionInfo: - $ref: '#/components/schemas/EcmConnectionInfo-Multiple' - - ManagedElement-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - AmfFunction: - $ref: '#/components/schemas/AmfFunction-Multiple' - SmfFunction: - $ref: '#/components/schemas/SmfFunction-Multiple' - UpfFunction: - $ref: '#/components/schemas/UpfFunction-Multiple' - N3iwfFunction: - $ref: '#/components/schemas/N3iwfFunction-Multiple' - PcfFunction: - $ref: '#/components/schemas/PcfFunction-Multiple' - AusfFunction: - $ref: '#/components/schemas/AusfFunction-Multiple' - UdmFunction: - $ref: '#/components/schemas/UdmFunction-Multiple' - UdrFunction: - $ref: '#/components/schemas/UdrFunction-Multiple' - UdsfFunction: - $ref: '#/components/schemas/UdsfFunction-Multiple' - NrfFunction: - $ref: '#/components/schemas/NrfFunction-Multiple' - NssfFunction: - $ref: '#/components/schemas/NssfFunction-Multiple' - SmsfFunction: - $ref: '#/components/schemas/SmsfFunction-Multiple' - LmfFunction: - $ref: '#/components/schemas/LmfFunction-Multiple' - NgeirFunction: - $ref: '#/components/schemas/NgeirFunction-Multiple' - SeppFunction: - $ref: '#/components/schemas/SeppFunction-Multiple' - NwdafFunction: - $ref: '#/components/schemas/NwdafFunction-Multiple' - ScpFunction: - $ref: '#/components/schemas/ScpFunction-Multiple' - NefFunction: - $ref: '#/components/schemas/NefFunction-Multiple' - Configurable5QISet: - $ref: '#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: '#/components/schemas/Dynamic5QISet-Multiple' - EcmConnectionInfo: - $ref: '#/components/schemas/EcmConnectionInfo-Multiple' - EASDFFunction: - $ref: '#/components/schemas/EASDFFunction-Multiple' - NSSAAFFunction: - $ref: '#/components/schemas/NssaafFunction-Multiple' - AFFunction: - $ref: '#/components/schemas/AfFunction-Multiple' - DCCFFunction: - $ref: '#/components/schemas/DccfFunction-Multiple' - ChfFunction: - $ref: '#/components/schemas/ChfFunction-Multiple' - MFAFFunction: - $ref: '#/components/schemas/MfafFunction-Multiple' - GMLCFunction: - $ref: '#/components/schemas/GmlcFunction-Multiple' - TSCTSFFunction: - $ref: '#/components/schemas/TsctsfFunction-Multiple' - AANFFunction: - $ref: '#/components/schemas/AanfFunction-Multiple' - BSFFunction: - $ref: '#/components/schemas/BsfFunction-Multiple' - MBSMFFunction: - $ref: '#/components/schemas/MbSmfFunction-Multiple' - MBUPFFunction: - $ref: '#/components/schemas/MbUpfFunction-Multiple' - MNPFFunction: - $ref: '#/components/schemas/MnpfFunction-Multiple' + type: array + items: + $ref: '#/components/schemas/ManagedElement-ncO-5GcNrm' AmfFunction-Single: allOf: @@ -2917,7 +3031,11 @@ components: nTNPLMNInfoList: $ref: '#/components/schemas/NTNPLMNRestrictionsInfo' amfInfo: - $ref: '#/components/schemas/AmfInfo' + $ref: '#/components/schemas/AmfInfo' + sliceExpiryInfo: + $ref: '#/components/schemas/SliceExpiryInfo' + SatelliteBackhaulInfoList: + $ref: '#/components/schemas/SatelliteBackhaulInfo' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -2977,6 +3095,7 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' aMFSetMemberList: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' AmfRegion-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -2997,6 +3116,7 @@ components: $ref: '#/components/schemas/SnssaiList' aMFSetListRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' SmfFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -3025,6 +3145,10 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' dynamic5QISetRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + dnaiSatelliteMappingList: + type: array + items: + $ref: '#/components/schemas/dnaiSatelliteMapping' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' - type: object properties: @@ -3245,7 +3369,7 @@ components: $ref: '#/components/schemas/ManagedNFProfile' udrInfo: $ref: '#/components/schemas/UdrInfo' - + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' UdsfFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -3264,7 +3388,7 @@ components: $ref: '#/components/schemas/ManagedNFProfile' udsfInfo: $ref: '#/components/schemas/UdsfInfo' - + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' NrfFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -3653,6 +3777,7 @@ components: $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnIdList' amfIdentifier: $ref: '#/components/schemas/AmfIdentifier' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' ExternalNrfFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -3665,6 +3790,7 @@ components: properties: plmnIdList: $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnIdList' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' ExternalNssfFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -3677,6 +3803,7 @@ components: properties: plmnIdList: $ref: 'TS28541_NrNrm.yaml#/components/schemas/PlmnIdList' + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' ExternalSeppFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -3693,7 +3820,7 @@ components: type: integer fqdn: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Fqdn' - + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' EP_N2-Single: allOf: @@ -5154,14 +5281,6 @@ components: #-------- Definition of JSON arrays for name-contained IOCs ---------------------- - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' AmfFunction-Multiple: type: array items: @@ -5604,9 +5723,7 @@ components: resources-5gcNrm: oneOf: - - $ref: '#/components/schemas/ProvMnS' - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' + - $ref: '#/components/schemas/MnS' - $ref: '#/components/schemas/AmfFunction-Single' - $ref: '#/components/schemas/SmfFunction-Single' - $ref: '#/components/schemas/UpfFunction-Single' diff --git a/TS28541_NrNrm.yaml b/TS28541_NrNrm.yaml index dd2a8ec..9cfcb39 100644 --- a/TS28541_NrNrm.yaml +++ b/TS28541_NrNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: NR NRM - version: 18.6.0 + version: 18.7.0 description: >- OAS 3.0.1 specification of the NR NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.541; 5G NRM, NR NRM @@ -59,6 +59,8 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' snssai: $ref: '#/components/schemas/Snssai' + sliceExpiryTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' PlmnInfoList: type: array items: @@ -692,6 +694,73 @@ components: minimum: 0 maximum: 16777215 +#-------- Definition of types for name-containments ------ + SubNetwork-ncO-NrNrm: + type: object + properties: + NRFrequency: + $ref: '#/components/schemas/NRFrequency-Multiple' + ExternalGnbCuCpFunction: + $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' + ExternalGnbCuUpFunction: + $ref: '#/components/schemas/ExternalGnbCuUpFunction-Multiple' + ExternalGnbDuFunction: + $ref: '#/components/schemas/ExternalGnbDuFunction-Multiple' + ExternalENBFunction: + $ref: '#/components/schemas/ExternalENBFunction-Multiple' + EUtranFrequency: + $ref: '#/components/schemas/EUtranFrequency-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DLBOFunction: + $ref: '#/components/schemas/DLBOFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: 'TS28541_5GcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + RimRSGlobal: + $ref: '#/components/schemas/RimRSGlobal-Single' + Dynamic5QISet: + $ref: 'TS28541_5GcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + CCOFunction: + $ref: '#/components/schemas/CCOFunction-Single' + + ManagedElement-ncO-NrNrm: + type: object + properties: + GnbDuFunction: + $ref: '#/components/schemas/GnbDuFunction-Multiple' + GnbCuUpFunction: + $ref: '#/components/schemas/GnbCuUpFunction-Multiple' + GnbCuCpFunction: + $ref: '#/components/schemas/GnbCuCpFunction-Multiple' + DESManagementFunction: + $ref: '#/components/schemas/DESManagementFunction-Single' + DRACHOptimizationFunction: + $ref: '#/components/schemas/DRACHOptimizationFunction-Single' + DMROFunction: + $ref: '#/components/schemas/DMROFunction-Single' + DLBOFunction: + $ref: '#/components/schemas/DLBOFunction-Single' + DPCIConfigurationFunction: + $ref: '#/components/schemas/DPCIConfigurationFunction-Single' + CPCIConfigurationFunction: + $ref: '#/components/schemas/CPCIConfigurationFunction-Single' + CESManagementFunction: + $ref: '#/components/schemas/CESManagementFunction-Single' + Configurable5QISet: + $ref: 'TS28541_5GcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' + Dynamic5QISet: + $ref: 'TS28541_5GcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + #-------- Definition of abstract IOCs -------------------------------------------- RrmPolicy_-Attr: @@ -702,7 +771,6 @@ components: rRMPolicyMemberList: $ref: '#/components/schemas/RrmPolicyMemberList' - #-------- Definition of concrete IOCs -------------------------------------------- MnS: @@ -710,90 +778,15 @@ components: - type: object properties: SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - - type: object - properties: - ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' + type: array + items: + $ref: '#/components/schemas/SubNetwork-ncO-NrNrm' - type: object properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' ManagedElement: - $ref: '#/components/schemas/ManagedElement-Multiple' - NRFrequency: - $ref: '#/components/schemas/NRFrequency-Multiple' - ExternalGnbCuCpFunction: - $ref: '#/components/schemas/ExternalGnbCuCpFunction-Multiple' - ExternalENBFunction: - $ref: '#/components/schemas/ExternalENBFunction-Multiple' - EUtranFrequency: - $ref: '#/components/schemas/EUtranFrequency-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DLBOFunction: - $ref: '#/components/schemas/DLBOFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: 'TS28541_5GcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - RimRSGlobal: - $ref: '#/components/schemas/RimRSGlobal-Single' - Dynamic5QISet: - $ref: 'TS28541_5GcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' - CCOFunction: - $ref: '#/components/schemas/CCOFunction-Single' - ManagedElement-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedElement-ncO' - - type: object - properties: - GnbDuFunction: - $ref: '#/components/schemas/GnbDuFunction-Multiple' - GnbCuUpFunction: - $ref: '#/components/schemas/GnbCuUpFunction-Multiple' - GnbCuCpFunction: - $ref: '#/components/schemas/GnbCuCpFunction-Multiple' - DESManagementFunction: - $ref: '#/components/schemas/DESManagementFunction-Single' - DRACHOptimizationFunction: - $ref: '#/components/schemas/DRACHOptimizationFunction-Single' - DMROFunction: - $ref: '#/components/schemas/DMROFunction-Single' - DLBOFunction: - $ref: '#/components/schemas/DLBOFunction-Single' - DPCIConfigurationFunction: - $ref: '#/components/schemas/DPCIConfigurationFunction-Single' - CPCIConfigurationFunction: - $ref: '#/components/schemas/CPCIConfigurationFunction-Single' - CESManagementFunction: - $ref: '#/components/schemas/CESManagementFunction-Single' - Configurable5QISet: - $ref: 'TS28541_5GcNrm.yaml#/components/schemas/Configurable5QISet-Multiple' - Dynamic5QISet: - $ref: 'TS28541_5GcNrm.yaml#/components/schemas/Dynamic5QISet-Multiple' + type: array + items: + $ref: '#/components/schemas/ManagedElement-ncO-NrNrm' GnbDuFunction-Single: allOf: @@ -1521,7 +1514,10 @@ components: enum: - IS_NOT_ENERGY_SAVING - IS_ENERGY_SAVING - + mLEntityRef: + $ref: "#'TS28623_ComDefs.yaml#/components/schemas/Dn'" + aIMLInferenceFunctionRef: + $ref: "#'TS28623_ComDefs.yaml#/components/schemas/Dn'" DRACHOptimizationFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -1555,6 +1551,10 @@ components: $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' tstoreUEcntxt: $ref: '#/components/schemas/TstoreUEcntxt' + mLEntityRef: + $ref: "#'TS28623_ComDefs.yaml#/components/schemas/Dn'" + aIMLInferenceFunctionRef: + $ref: "#'TS28623_ComDefs.yaml#/components/schemas/Dn'" DLBOFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -1569,7 +1569,10 @@ components: $ref: '#/components/schemas/MaximumDeviationHoTrigger' minimumTimeBetweenHoTriggerChange: $ref: '#/components/schemas/MinimumTimeBetweenHoTriggerChange' - + mLEntityRef: + $ref: "#'TS28623_ComDefs.yaml#/components/schemas/Dn'" + aIMLInferenceFunctionRef: + $ref: "#'TS28623_ComDefs.yaml#/components/schemas/Dn'" DPCIConfigurationFunction-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -2012,14 +2015,6 @@ components: #-------- Definition of JSON arrays for name-contained IOCs ---------------------- - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' - ManagedElement-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagedElement-Single' GnbDuFunction-Multiple: type: array items: @@ -2182,9 +2177,6 @@ components: resources-nrNrm: oneOf: - $ref: '#/components/schemas/MnS' - - - $ref: '#/components/schemas/SubNetwork-Single' - - $ref: '#/components/schemas/ManagedElement-Single' - $ref: '#/components/schemas/GnbDuFunction-Single' - $ref: '#/components/schemas/GnbCuUpFunction-Single' diff --git a/TS28541_SliceNrm.yaml b/TS28541_SliceNrm.yaml index 52620a6..d64929f 100644 --- a/TS28541_SliceNrm.yaml +++ b/TS28541_SliceNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Slice NRM - version: 18.6.0 + version: 18.7.0 description: >- OAS 3.0.1 specification of the Slice NRM - @ 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + @ 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.541; 5G NRM, Slice NRM @@ -410,7 +410,13 @@ components: $ref: '#/components/schemas/DataNetwork' dataNetworkAccess: $ref: '#/components/schemas/DataNetworkAccess' - + dLPktDelayVariation: + $ref: '#/components/schemas/Float' + uLPktDelayVariation: + $ref: '#/components/schemas/Float' + sliceSubnetAvailability: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SchedulingTime' + RANSliceSubnetProfile: type: object properties: @@ -478,6 +484,10 @@ components: type: number kPIMonitoring: $ref: '#/components/schemas/KPIMonitoring' + dLPktDelayVariation: + $ref: '#/components/schemas/Float' + uLPktDelayVariation: + $ref: '#/components/schemas/Float' TopSliceSubnetProfile: type: object @@ -556,6 +566,12 @@ components: $ref: '#/components/schemas/DataNetwork' dataNetworkAccess: $ref: '#/components/schemas/DataNetworkAccess' + dLPktDelayVariation: + $ref: '#/components/schemas/Float' + uLPktDelayVariation: + $ref: '#/components/schemas/Float' + sliceSubnetAvailability: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SchedulingTime' ServiceProfile: type: object @@ -622,8 +638,6 @@ components: $ref: '#/components/schemas/Float' uESpeed: type: integer - jitter: - type: integer survivalTime: type: number dLReliability: @@ -648,6 +662,12 @@ components: $ref: '#/components/schemas/DataNetwork' dataNetworkAccess: $ref: '#/components/schemas/DataNetworkAccess' + dLPktDelayVariation: + $ref: '#/components/schemas/Float' + uLPktDelayVariation: + $ref: '#/components/schemas/Float' + sliceAvailability: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SchedulingTime' SliceProfile: type: object @@ -783,6 +803,27 @@ components: - NETWORKSLICE - NETWORKSLICESUBNET +#-------- Definition of types for name-containments ------ + SubNetwork-ncO-SliceNrm: + type: object + properties: + NetworkSlice: + $ref: '#/components/schemas/NetworkSlice-Multiple' + NetworkSliceSubnet: + $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' + EP_Transport: + $ref: '#/components/schemas/EP_Transport-Multiple' + NetworkSliceSubnetProviderCapabilities: + $ref: '#/components/schemas/NetworkSliceSubnetProviderCapabilities-Multiple' + FeasibilityCheckAndReservationJob: + $ref: '#/components/schemas/FeasibilityCheckAndReservationJob-Multiple' + NetworkSliceController: + $ref: '#/components/schemas/NetworkSliceController-Multiple' + NetworkSliceSubnetController: + $ref: '#/components/schemas/NetworkSliceSubnetController-Multiple' + IsolationProfile: + $ref: '#/components/schemas/IsolationProfile-Multiple' + #------------ Definition of concrete IOCs ---------------------------------------- MnS: @@ -790,42 +831,14 @@ components: - type: object properties: SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' + type: array + items: + $ref: '#/components/schemas/SubNetwork-ncO-SliceNrm' # - type: object # properties: # ManagedElement: # $ref: '#/components/schemas/ManagedElement-Multiple' - SubNetwork-Single: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' - - type: object - properties: - attributes: - allOf: - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr' - - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO' - - type: object - properties: - SubNetwork: - $ref: '#/components/schemas/SubNetwork-Multiple' - NetworkSlice: - $ref: '#/components/schemas/NetworkSlice-Multiple' - NetworkSliceSubnet: - $ref: '#/components/schemas/NetworkSliceSubnet-Multiple' - EP_Transport: - $ref: '#/components/schemas/EP_Transport-Multiple' - NetworkSliceSubnetProviderCapabilities: - $ref: '#/components/schemas/NetworkSliceSubnetProviderCapabilities-Multiple' - FeasibilityCheckAndReservationJob: - $ref: '#/components/schemas/FeasibilityCheckAndReservationJob-Multiple' - NetworkSliceController: - $ref: '#/components/schemas/NetworkSliceController-Multiple' - NetworkSliceSubnetController: - $ref: '#/components/schemas/NetworkSliceSubnetController-Multiple' - IsolationProfile: - $ref: '#/components/schemas/IsolationProfile-Multiple' - NetworkSlice-Single: allOf: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' @@ -1026,10 +1039,6 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' #-------- Definition of JSON arrays for name-contained IOCs ---------------------- - SubNetwork-Multiple: - type: array - items: - $ref: '#/components/schemas/SubNetwork-Single' NetworkSlice-Multiple: type: array @@ -1076,7 +1085,6 @@ components: oneOf: - $ref: '#/components/schemas/MnS' - - $ref: '#/components/schemas/SubNetwork-Single' - $ref: '#/components/schemas/NetworkSlice-Single' - $ref: '#/components/schemas/NetworkSliceSubnet-Single' - $ref: '#/components/schemas/EP_Transport-Single' diff --git a/TS28623_ComDefs.yaml b/TS28623_ComDefs.yaml index 88dbbd9..c4e8662 100644 --- a/TS28623_ComDefs.yaml +++ b/TS28623_ComDefs.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Common Type Definitions - version: 18.5.0 + version: 18.6.0 description: >- OAS 3.0.1 specification of common type definitions in the Generic NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.623; Generic NRM; Common type definitions @@ -232,7 +232,7 @@ components: Filter: description: >- - The filter format shall be compliant to XPath 1.0. + The filter format shall be compliant to Jex (TS 32.161). type: string SystemDN: type: string @@ -241,7 +241,7 @@ components: type: integer NotificationType: oneOf: - - $ref: 'TS28532_FaultMnS.yaml#/components/schemas/AlarmNotificationTypes' + - $ref: 'TS28111_FaultNrm.yaml#/components/schemas/AlarmNotificationTypes' - $ref: 'TS28532_ProvMnS.yaml#/components/schemas/CmNotificationTypes' - $ref: 'TS28532_PerfMnS.yaml#/components/schemas/PerfNotificationTypes' - $ref: 'TS28532_HeartbeatNtf.yaml#/components/schemas/HeartbeatNotificationTypes' @@ -277,3 +277,135 @@ components: properties: errorInfo: type: string + Subscription: + type: object + properties: + consumerReference: + $ref: '#/components/schemas/Uri' + timeTick: + type: integer + filter: + $ref: '#/components/schemas/Filter' + + ErrorResponseGet: + description: >- + Default schema for the response message body in case the Get + is not successful. + type: object + properties: + status: + type: string + type: + type: string + reason: + type: string + title: + type: string + badQueryParams: + type: array + items: + type: string + otherProblems: + type: array + items: + type: object + properties: + status: + type: string + type: + type: string + reason: + type: string + title: + type: string + badQueryParams: + type: array + items: + type: string + required: + - type + required: + - type + + ErrorResponseDefault: + type: object + properties: + status: + type: string + type: + type: string + reason: + type: string + title: + type: string + badAttributes: + type: array + items: + type: string + badObjects: + type: array + items: + type: string + otherProblems: + type: array + items: + type: object + properties: + status: + type: string + type: + type: string + reason: + type: string + title: + type: string + badAttributes: + type: array + items: + type: string + badObjects: + type: array + items: + type: string + required: + - type + required: + - type + + ErrorResponsePatch: + description: >- + Default schema for the response message body in case the patch + is not successful. + type: object + properties: + status: + type: string + type: + type: string + reason: + type: string + title: + type: string + badOP: + type: string + otherProblems: + type: array + items: + type: object + properties: + status: + type: string + type: + type: string + reason: + type: string + title: + type: string + badOp: + type: string + required: + - type + - badOp + required: + - type + - badOp diff --git a/TS28623_FileManagementNrm.yaml b/TS28623_FileManagementNrm.yaml new file mode 100644 index 0000000..6cdfde2 --- /dev/null +++ b/TS28623_FileManagementNrm.yaml @@ -0,0 +1,157 @@ +openapi: 3.0.1 +info: + title: File Management NRM + version: 18.6.0 + description: >- + OAS 3.0.1 definition of the File Management NRM fragment + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623; Generic NRM, File Management NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: +#-------- Definition of types----------------------------------------------------- + FileDownloadJobProcessMonitor: + description: >- + This data type is the "ProcessMonitor" data type with specialisations + for usage in the "FileDownloadJob". + type: object + properties: + jobId: + type: string + status: + type: string + enum: + - NOT_STARTED + - RUNNING + - FINSHED + - FAILED + - CANCELLING + - CANCELLED + progressPercentage: + type: integer + minimum: 0 + maximum: 100 + progressStateInfo: + type: string + resultStateInfo: + oneOf: + - type: string + enum: + - NULL + - UNKNOWN + - NO_STORAGE + - LOW_MEMROY + - NO_CONNECTION_TO_REMOTE_SERVER + - FILE_NOT_AVAILABLE + - DNS_CANNOT_BE_RESOLVED + - TIMER_EXPIRED + - OTHER + - type: string + startTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + endTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + timer: + type: integer + +#-------- Definition of concrete IOCs -------------------------------------------- + + + FileDownloadJob-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + fileLocation: + type: string + notificationRecipientAddress: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' + cancelJob: + type: string + enum: + - TRUE + - FALSE + jobMonitor: + $ref: '#/components/schemas/FileDownloadJobProcessMonitor' + Files-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + numberOfFiles: + type: integer + jobRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + jobId: + type: string + File: + $ref: '#/components/schemas/File-Multiple' + File-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + fileLocation: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' + fileCompression: + type: string + fileSize: + type: integer + fileDataType: + type: string + enum: + - PERFORMANCE + - TRACE + - ANALYTICS + - PROPRIETARY + fileFormat: + type: string + fileReadyTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + fileExpirationTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' + fileContent: + type: string + jobRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + jobId: + type: string + + + +#-------- Definition of YAML arrays for name-contained IOCs ---------------------- + + FileDownloadJob-Multiple: + type: array + items: + $ref: '#/components/schemas/FileDownloadJob-Single' + Files-Multiple: + type: array + items: + $ref: '#/components/schemas/Files-Single' + File-Multiple: + type: array + items: + $ref: '#/components/schemas/File-Single' + + + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + resources-fileMgmtNrm: + oneOf: + - $ref: '#/components/schemas/FileDownloadJob-Single' + - $ref: '#/components/schemas/Files-Single' + - $ref: '#/components/schemas/File-Single' + diff --git a/TS28623_GenericNrm.yaml b/TS28623_GenericNrm.yaml index 64b9c01..3d72b92 100644 --- a/TS28623_GenericNrm.yaml +++ b/TS28623_GenericNrm.yaml @@ -1,10 +1,10 @@ openapi: 3.0.1 info: title: Generic NRM - version: 18.5.0 + version: 18.6.0 description: >- OAS 3.0.1 definition of the Generic NRM - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.623; Generic NRM @@ -51,30 +51,6 @@ components: type: string powerInterface: type: string - ThresholdInfo: - type: object - properties: - performanceMetrics: - type: array - items: - type: string - thresholdDirection: - type: string - enum: - - UP - - DOWN - - UP_AND_DOWN - thresholdValue: - oneOf: - - type: integer - - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' - hysteresis: - oneOf: - - type: integer - minimum: 0 - - type: number - format: float - minimum: 0 Operation: type: object properties: @@ -209,6 +185,12 @@ components: properties: fileReportingPeriod: type: integer + - type: object + properties: + fileReportingPeriod: + type: integer + notificationRecipientAddress: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - type: object properties: fileReportingPeriod: @@ -220,17 +202,22 @@ components: streamTarget: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' Scope: - type: object - properties: - scopeType: - type: string - enum: - - BASE_ONLY - - BASE_ALL - - BASE_NTH_LEVEL - - BASE_SUBTREE - scopeLevel: - type: integer + oneOf: + - type: object + properties: + scopeType: + type: string + enum: + - BASE_ONLY + - BASE_ALL + - BASE_NTH_LEVEL + - BASE_SUBTREE + scopeLevel: + type: integer + - type: object + properties: + dataNodeSelector: + type: string ProcessMonitor: description: >- This data type is the "ProcessMonitor" data type without specialisations. @@ -262,49 +249,6 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' timer: type: integer - FileDownloadJobProcessMonitor: - description: >- - This data type is the "ProcessMonitor" data type with specialisations - for usage in the "FileDownloadJob". - type: object - properties: - jobId: - type: string - status: - type: string - enum: - - NOT_STARTED - - RUNNING - - FINSHED - - FAILED - - CANCELLING - - CANCELLED - progressPercentage: - type: integer - minimum: 0 - maximum: 100 - progressStateInfo: - type: string - resultStateInfo: - oneOf: - - type: string - enum: - - NULL - - UNKNOWN - - NO_STORAGE - - LOW_MEMROY - - NO_CONNECTION_TO_REMOTE_SERVER - - FILE_NOT_AVAILABLE - - DNS_CANNOT_BE_RESOLVED - - TIMER_EXPIRED - - OTHER - - type: string - startTime: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' - endTime: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' - timer: - type: integer AreaScope: oneOf: - type: array @@ -346,37 +290,6 @@ components: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Ipv4Addr' - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Ipv6Addr' - ManagementData: - oneOf: - - type: array - items: - type: string - enum: - - COVERAGE - - CAPACITY - - ENERGY_EFFICIENCY - - MOBILITY - - ACCESSIBILITY - - type: array - items: - type: string - NodeFilter: - type: object - properties: - areaOfInterest: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/AreaOfInterest' - networkDomain: - type: string - enum: - - CN - - RAN - cpUpType: - type: string - enum: - - CP - - UP - sst: - type: integer SchedulingTime: oneOf: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' @@ -531,23 +444,23 @@ components: MeContext: $ref: '#/components/schemas/MeContext-Multiple' PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' + $ref: 'TS28623_PmControlNrm.yaml#/components/schemas/PerfMetricJob-Multiple' ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' + $ref: 'TS28623_ThresholdMonitorNrm.yaml#/components/schemas/ThresholdMonitor-Multiple' TraceJob: $ref: 'TS28623_TraceControlNrm.yaml#/components/schemas/TraceJob-Multiple' ManagementDataCollection: - $ref: '#/components/schemas/ManagementDataCollection-Multiple' + $ref: 'TS28623_ManagementDataCollectionNrm.yaml#/components/schemas/ManagementDataCollection-Multiple' NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + $ref: 'TS28623_SubscriptionControlNrm.yaml#/components/schemas/NtfSubscriptionControl-Multiple' AlarmList: - $ref: '#/components/schemas/AlarmList-Single' + $ref: 'TS28111_FaultNrm.yaml#/components/schemas/AlarmList-Single' FileDownloadJob: - $ref: '#/components/schemas/FileDownloadJob-Multiple' + $ref: 'TS28623_FileManagementNrm.yaml#/components/schemas/FileDownloadJob-Multiple' Files: - $ref: '#/components/schemas/Files-Multiple' + $ref: 'TS28623_FileManagementNrm.yaml#/components/schemas/Files-Multiple' MnsRegistry: - $ref: '#/components/schemas/MnsRegistry-Single' + $ref: 'TS28623_MnSRegistryNrm.yaml#/components/schemas/MnsRegistry-Single' Scheduler: $ref: '#/components/schemas/Scheduler-Multiple' ConditionMonitor: @@ -555,7 +468,7 @@ components: SupportedNotifications: $ref: '#/components/schemas/SupportedNotifications-Single' QMCJobs: - $ref: '#/components/schemas/QMCJob-Multiple' + $ref: 'TS28623_QoEMeasurementCollectionNrm.yaml#/components/schemas/QMCJob-Multiple' ManagedElement-ncO: type: object @@ -563,19 +476,19 @@ components: MnsAgent: $ref: '#/components/schemas/MnsAgent-Multiple' PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' + $ref: 'TS28623_PmControlNrm.yaml#/components/schemas/PerfMetricJob-Multiple' ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' + $ref: 'TS28623_ThresholdMonitorNrm.yaml#/components/schemas/ThresholdMonitor-Multiple' TraceJob: $ref: 'TS28623_TraceControlNrm.yaml#/components/schemas/TraceJob-Multiple' NtfSubscriptionControl: - $ref: '#/components/schemas/NtfSubscriptionControl-Multiple' + $ref: 'TS28623_SubscriptionControlNrm.yaml#/components/schemas/NtfSubscriptionControl-Multiple' AlarmList: - $ref: '#/components/schemas/AlarmList-Single' + $ref: 'TS28111_FaultNrm.yaml#/components/schemas/AlarmList-Single' FileDownloadJob: - $ref: '#/components/schemas/FileDownloadJob-Multiple' + $ref: 'TS28623_FileManagementNrm.yaml#/components/schemas/FileDownloadJob-Multiple' Files: - $ref: '#/components/schemas/Files-Multiple' + $ref: 'TS28623_FileManagementNrm.yaml#/components/schemas/Files-Multiple' Scheduler: $ref: '#/components/schemas/Scheduler-Multiple' ConditionMonitor: @@ -583,7 +496,7 @@ components: SupportedNotifications: $ref: '#/components/schemas/SupportedNotifications-Single' QMCJobs: - $ref: '#/components/schemas/QMCJob-Multiple' + $ref: 'TS28623_QoEMeasurementCollectionNrm.yaml#/components/schemas/QMCJob-Multiple' #-------- Definition of abstract IOCs -------------------------------------------- @@ -626,9 +539,9 @@ components: type: object properties: PerfMetricJob: - $ref: '#/components/schemas/PerfMetricJob-Multiple' + $ref: 'TS28623_PmControlNrm.yaml#/components/schemas/PerfMetricJob-Multiple' ThresholdMonitor: - $ref: '#/components/schemas/ThresholdMonitor-Multiple' + $ref: 'TS28623_ThresholdMonitorNrm.yaml#/components/schemas/ThresholdMonitor-Multiple' ManagedNFService: $ref: '#/components/schemas/ManagedNFService-Multiple' TraceJob: @@ -720,248 +633,6 @@ components: properties: dnPrefix: type: string - PerfMetricJob-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - not: - required: [ conditionMonitorRef, schedulerRef ] - properties: - administrativeState: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/AdministrativeState' - operationalState: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/OperationalState' - jobId: - type: string - performanceMetrics: - type: array - items: - type: string - granularityPeriod: - type: integer - minimum: 1 - objectInstances: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' - rootObjectInstances: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' - conditionMonitorRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - schedulerRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - reportingCtrl: - $ref: '#/components/schemas/ReportingCtrl' - Files: - $ref: '#/components/schemas/Files-Multiple' - - ThresholdMonitor-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/AdministrativeState' - operationalState: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/OperationalState' - thresholdInfoList: - type: array - items: - $ref: '#/components/schemas/ThresholdInfo' - monitorGranularityPeriod: - type: integer - minimum: 1 - objectInstances: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' - rootObjectInstances: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' - NtfSubscriptionControl-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - notificationRecipientAddress: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - notificationTypes: - type: array - items: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationType' - scope: - $ref: '#/components/schemas/Scope' - notificationFilter: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Filter' - HeartbeatControl: - $ref: '#/components/schemas/HeartbeatControl-Single' - HeartbeatControl-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - heartbeatNtfPeriod: - type: integer - minimum: 0 - triggerHeartbeatNtf: - type: boolean - - ManagementDataCollection-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - managementData: - $ref: '#/components/schemas/ManagementData' - targetNodeFilter: - $ref: '#/components/schemas/NodeFilter' - collectionTimeWindow: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' - reportingCtrl: - $ref: '#/components/schemas/ReportingCtrl' - dataScope: - type: string - enum: - - SNSSAI - - 5QI - - PLMN - AlarmList-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - administrativeState: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/AdministrativeState' - operationalState: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/OperationalState' - numOfAlarmRecords: - type: integer - lastModification: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' - alarmRecords: - description: >- - This resource represents a map of alarm records. - The alarmIds are used as keys in the map. - type: object - additionalProperties: - $ref: 'TS28532_FaultMnS.yaml#/components/schemas/AlarmRecord' - FileDownloadJob-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - fileLocation: - type: string - notificationRecipientAddress: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - cancelJob: - type: string - enum: - - TRUE - - FALSE - jobMonitor: - $ref: '#/components/schemas/FileDownloadJobProcessMonitor' - Files-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - numberOfFiles: - type: integer - jobRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - jobId: - type: string - File: - $ref: '#/components/schemas/File-Multiple' - File-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - fileLocation: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - fileCompression: - type: string - fileSize: - type: integer - fileDataType: - type: string - enum: - - PERFORMANCE - - TRACE - - ANALYTICS - - PROPRIETARY - fileFormat: - type: string - fileReadyTime: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' - fileExpirationTime: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime' - fileContent: - type: string - jobRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' - jobId: - type: string - MnsRegistry-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - MnsInfo: - $ref: '#/components/schemas/MnsInfo-Multiple' - - MnsInfo-Single: - allOf: - - $ref: '#/components/schemas/Top' - - type: object - properties: - mnsLabel: - type: string - mnsType: - type: string - enum: - - ProvMnS - - FaultSupervisionMnS - - StreamingDataReportingMnS - - FileDataReportingMnS - mnsVersion: - type: string - mnsAddress: - description: Resource URI as defined in the relevant Technical Specification - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' - mnsScope: - description: >- - List of the managed object instances that can be accessed using the MnS. - If a complete SubNetwork can be accessed using the MnS, this attribute may - contain the DN of the SubNetwork instead of the DNs of the individual managed - entities within the SubNetwork. - type: array - items: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' Scheduler-Single: allOf: - $ref: '#/components/schemas/Top' @@ -1011,51 +682,34 @@ components: - HTTP_VES_ENCAPS minItems: 1 - QMCJob-Single: + + SubNetwork-Single: + allOf: + - $ref: '#/components/schemas/Top' + - $ref: '#/components/schemas/SubNetwork-Attr' + - $ref: '#/components/schemas/SubNetwork-ncO' + - $ref: '#/components/schemas/SubNetwork-Multiple' + - $ref: '#/components/schemas/ManagedElement-Multiple' + - $ref: 'TS28104_MdaNrm.yaml#/components/schemas/SubNetwork-ncO-MdaNrm' + - $ref: 'TS28105_AiMlNrm.yaml#/components/schemas/SubNetwork-ncO-AiMlNrm' + - $ref: 'TS28312_IntentNrm.yaml#/components/schemas/SubNetwork-ncO-IntentNrm' + - $ref: 'TS28317_RanScNrm.yaml#/components/schemas/SubNetwork-ncO-RanScNrm' + - $ref: 'TS28536_CoslaNrm.yaml#/components/schemas/SubNetwork-ncO-CoslaNrm' + - $ref: 'TS28538_EdgeNrm.yaml#/components/schemas/SubNetwork-ncO-EdgeNrm' + - $ref: 'TS28541_SliceNrm.yaml#/components/schemas/SubNetwork-ncO-SliceNrm' + - $ref: 'TS28541_NrNrm.yaml#/components/schemas/SubNetwork-ncO-NrNrm' + - $ref: 'TS28541_5GcNrm.yaml#/components/schemas/SubNetwork-ncO-5GcNrm' + + ManagedElement-Single: allOf: - $ref: '#/components/schemas/Top' - - type: object - properties: - attributes: - type: object - properties: - serviceType: - type: string - enum: - - DASH - - MTSI - - VR - areaScope: - type: array - items: - $ref: '#/components/schemas/AreaScope' - qoECollectionEntityAddress: - $ref: '#/components/schemas/IpAddr' - pLMNTarget: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' - qoETarget: - type: string - qoEReference: - type: string - jobId: - type: string - sliceScope: - type: array - items: - $ref: 'TS28541_NrNrm.yaml#/components/schemas/Snssai' - qMCConfigFile: - type: string - mDTAlignmentInformation: - $ref: 'TS28623_TraceControlNrm.yaml#/components/schemas/traceReference-Type' - availableRANqoEMetrics: - type: array - items: - type: string - enum: - - APPLAYERBUFFERLEVELLIST - - PLAYOUTDELAYFORMEDIA_STARTUP - minItems: 0 - maxItems: 2 + - $ref: '#/components/schemas/ManagedElement-Attr' + - $ref: '#/components/schemas/ManagedElement-ncO' + - $ref: 'TS28104_MdaNrm.yaml#/components/schemas/ManagedElement-ncO-MdaNrm' + - $ref: 'TS28105_AiMlNrm.yaml#/components/schemas/ManagedElement-ncO-AiMlNrm' + - $ref: 'TS28536_CoslaNrm.yaml#/components/schemas/ManagedElement-ncO-CoslaNrm' + - $ref: 'TS28541_NrNrm.yaml#/components/schemas/ManagedElement-ncO-NrNrm' + - $ref: 'TS28541_5GcNrm.yaml#/components/schemas/ManagedElement-ncO-5GcNrm' #-------- Definition of YAML arrays for name-contained IOCs ---------------------- @@ -1079,38 +733,6 @@ components: type: array items: $ref: '#/components/schemas/MeContext-Single' - PerfMetricJob-Multiple: - type: array - items: - $ref: '#/components/schemas/PerfMetricJob-Single' - ThresholdMonitor-Multiple: - type: array - items: - $ref: '#/components/schemas/ThresholdMonitor-Single' - ManagementDataCollection-Multiple: - type: array - items: - $ref: '#/components/schemas/ManagementDataCollection-Single' - NtfSubscriptionControl-Multiple: - type: array - items: - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - FileDownloadJob-Multiple: - type: array - items: - $ref: '#/components/schemas/FileDownloadJob-Single' - Files-Multiple: - type: array - items: - $ref: '#/components/schemas/Files-Single' - File-Multiple: - type: array - items: - $ref: '#/components/schemas/File-Single' - MnsInfo-Multiple: - type: array - items: - $ref: '#/components/schemas/MnsInfo-Single' Scheduler-Multiple: type: array items: @@ -1119,10 +741,15 @@ components: type: array items: $ref: '#/components/schemas/ConditionMonitor-Single' - QMCJob-Multiple: + SubNetwork-Multiple: + type: array + items: + $ref: '#/components/schemas/SubNetwork-Single' + ManagedElement-Multiple: type: array items: - $ref: '#/components/schemas/QMCJob-Single' + $ref: '#/components/schemas/ManagedElement-Single' + #-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- @@ -1130,29 +757,12 @@ components: oneOf: - $ref: '#/components/schemas/VsDataContainer-Single' - - $ref: '#/components/schemas/ManagementNode-Single' - $ref: '#/components/schemas/MnsAgent-Single' - $ref: '#/components/schemas/MeContext-Single' - - $ref: '#/components/schemas/ManagedNFService-Single' - - - $ref: '#/components/schemas/PerfMetricJob-Single' - - $ref: '#/components/schemas/ThresholdMonitor-Single' - - $ref: '#/components/schemas/ManagementDataCollection-Single' - - - $ref: '#/components/schemas/NtfSubscriptionControl-Single' - - $ref: '#/components/schemas/HeartbeatControl-Single' - - - $ref: '#/components/schemas/AlarmList-Single' - - - $ref: '#/components/schemas/FileDownloadJob-Single' - - $ref: '#/components/schemas/Files-Single' - - $ref: '#/components/schemas/File-Single' - - - $ref: '#/components/schemas/MnsRegistry-Single' - - $ref: '#/components/schemas/MnsInfo-Single' - $ref: '#/components/schemas/Scheduler-Single' - $ref: '#/components/schemas/ConditionMonitor-Single' - - $ref: '#/components/schemas/SupportedNotifications-Single' - - $ref: '#/components/schemas/QMCJob-Single' + - $ref: '#/components/schemas/SupportedNotifications-Single' + - $ref: '#/components/schemas/SubNetwork-Single' + - $ref: '#/components/schemas/ManagedElement-Single' diff --git a/TS28623_ManagementDataCollectionNrm.yaml b/TS28623_ManagementDataCollectionNrm.yaml new file mode 100644 index 0000000..1852723 --- /dev/null +++ b/TS28623_ManagementDataCollectionNrm.yaml @@ -0,0 +1,84 @@ +openapi: 3.0.1 +info: + title: Management Data Collection NRM + version: 18.6.0 + description: >- + OAS 3.0.1 definition of the Management Data Collection NRM fragment + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623; Generic NRM, Management Data Collection NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: +#-------- Definition of types----------------------------------------------------- + + ManagementData: + oneOf: + - type: array + items: + type: string + enum: + - COVERAGE + - CAPACITY + - ENERGY_EFFICIENCY + - MOBILITY + - ACCESSIBILITY + - type: array + items: + type: string + NodeFilter: + type: object + properties: + areaOfInterest: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AreaOfInterest' + networkDomain: + type: string + enum: + - CN + - RAN + cpUpType: + type: string + enum: + - CP + - UP + sst: + type: integer +#-------- Definition of concrete IOCs -------------------------------------------- + + ManagementDataCollection-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + managementData: + $ref: '#/components/schemas/ManagementData' + targetNodeFilter: + $ref: '#/components/schemas/NodeFilter' + collectionTimeWindow: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' + reportingCtrl: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ReportingCtrl' + dataScope: + type: string + enum: + - SNSSAI + - 5QI + - PLMN + +#-------- Definition of YAML arrays for name-contained IOCs ---------------------- + ManagementDataCollection-Multiple: + type: array + items: + $ref: '#/components/schemas/ManagementDataCollection-Single' + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + resources-mgmtDataCollectionNrm: + oneOf: + - $ref: '#/components/schemas/ManagementDataCollection-Single' + + diff --git a/TS28623_MnSRegistryNrm.yaml b/TS28623_MnSRegistryNrm.yaml new file mode 100644 index 0000000..a5a022a --- /dev/null +++ b/TS28623_MnSRegistryNrm.yaml @@ -0,0 +1,67 @@ +openapi: 3.0.1 +info: + title: MnS Registry NRM + version: 18.6.0 + description: >- + OAS 3.0.1 definition of the MnS Registry NRM fragment + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623; Generic NRM, MnS Registry NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: +#-------- Definition of types----------------------------------------------------- + +#-------- Definition of concrete IOCs -------------------------------------------- + MnsRegistry-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + MnsInfo: + $ref: '#/components/schemas/MnsInfo-Multiple' + + MnsInfo-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + mnsLabel: + type: string + mnsType: + type: string + enum: + - ProvMnS + - FaultSupervisionMnS + - StreamingDataReportingMnS + - FileDataReportingMnS + mnsVersion: + type: string + mnsAddress: + description: Resource URI as defined in the relevant Technical Specification + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' + mnsScope: + description: >- + List of the managed object instances that can be accessed using the MnS. + If a complete SubNetwork can be accessed using the MnS, this attribute may + contain the DN of the SubNetwork instead of the DNs of the individual managed + entities within the SubNetwork. + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + +#-------- Definition of YAML arrays for name-contained IOCs ---------------------- + + MnsInfo-Multiple: + type: array + items: + $ref: '#/components/schemas/MnsInfo-Single' + + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + resources-mnSRegistryNrm: + oneOf: + - $ref: '#/components/schemas/MnsInfo-Single' + - $ref: '#/components/schemas/MnsRegistry-Single' diff --git a/TS28623_PmControlNrm.yaml b/TS28623_PmControlNrm.yaml new file mode 100644 index 0000000..23581d7 --- /dev/null +++ b/TS28623_PmControlNrm.yaml @@ -0,0 +1,64 @@ +openapi: 3.0.1 +info: + title: PM control NRM + version: 18.6.0 + description: >- + OAS 3.0.1 definition of the PM control NRM fragment + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623; Generic NRM,PM control NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: +#-------- Definition of types----------------------------------------------------- + + +#-------- Definition of concrete IOCs -------------------------------------------- + PerfMetricJob-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + not: + required: [ conditionMonitorRef, schedulerRef ] + properties: + administrativeState: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AdministrativeState' + operationalState: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/OperationalState' + jobId: + type: string + performanceMetrics: + type: array + items: + type: string + granularityPeriod: + type: integer + minimum: 1 + objectInstances: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + rootObjectInstances: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + conditionMonitorRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + schedulerRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + reportingCtrl: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ReportingCtrl' + Files: + $ref: 'TS28623_FileManagementNrm.yaml#/components/schemas/Files-Multiple' + +#-------- Definition of YAML arrays for name-contained IOCs ---------------------- + PerfMetricJob-Multiple: + type: array + items: + $ref: '#/components/schemas/PerfMetricJob-Single' + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + resources-pmControlNrm: + oneOf: + - $ref: '#/components/schemas/PerfMetricJob-Single' diff --git a/TS28623_QoEMeasurementCollectionNrm.yaml b/TS28623_QoEMeasurementCollectionNrm.yaml new file mode 100644 index 0000000..27c4f7d --- /dev/null +++ b/TS28623_QoEMeasurementCollectionNrm.yaml @@ -0,0 +1,75 @@ +openapi: 3.0.1 +info: + title: QoE Measurement Collection NRM + version: 18.6.0 + description: >- + OAS 3.0.1 definition of the QoE Measurement Collection NRM + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623; Generic NRM,QoE Measurement Collection NRM fragment + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: +#-------- Definition of types----------------------------------------------------- + +#-------- Definition of concrete IOCs -------------------------------------------- + QMCJob-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + serviceType: + type: string + enum: + - DASH + - MTSI + - VR + areaScope: + type: array + items: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/AreaScope' + qoECollectionEntityAddress: + $ref: 'TS28623_GenericNrm.yaml#/components/schemas/IpAddr' + pLMNTarget: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId' + qoETarget: + type: string + qoEReference: + type: string + jobId: + type: string + sliceScope: + type: array + items: + $ref: 'TS28541_NrNrm.yaml#/components/schemas/Snssai' + qMCConfigFile: + type: string + mDTAlignmentInformation: + $ref: 'TS28623_TraceControlNrm.yaml#/components/schemas/traceReference-Type' + availableRANqoEMetrics: + type: array + items: + type: string + enum: + - APPLAYERBUFFERLEVELLIST + - PLAYOUTDELAYFORMEDIA_STARTUP + minItems: 0 + maxItems: 2 + + +#-------- Definition of YAML arrays for name-contained IOCs ---------------------- + + QMCJob-Multiple: + type: array + items: + $ref: '#/components/schemas/QMCJob-Single' + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + resources-qoEMeasuremetCollectionNrm: + oneOf: + - $ref: '#/components/schemas/QMCJob-Single' diff --git a/TS28623_SubscriptionControlNrm.yaml b/TS28623_SubscriptionControlNrm.yaml new file mode 100644 index 0000000..750d318 --- /dev/null +++ b/TS28623_SubscriptionControlNrm.yaml @@ -0,0 +1,75 @@ +openapi: 3.0.1 +info: + title: Subscription Control NRM + version: 18.2.0 + description: >- + OAS 3.0.1 definition of the Subscription Control NRM fragment + © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623; Generic NRM, Subscription Control NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: +#-------- Definition of types----------------------------------------------------- + Scope: + type: object + properties: + scopeType: + type: string + enum: + - BASE_ONLY + - BASE_ALL + - BASE_NTH_LEVEL + - BASE_SUBTREE + scopeLevel: + type: integer + +#-------- Definition of concrete IOCs -------------------------------------------- + NtfSubscriptionControl-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + notificationRecipientAddress: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Uri' + notificationTypes: + type: array + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/NotificationType' + scope: + $ref: '#/components/schemas/Scope' + notificationFilter: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Filter' + HeartbeatControl: + $ref: '#/components/schemas/HeartbeatControl-Single' + HeartbeatControl-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + heartbeatNtfPeriod: + type: integer + minimum: 0 + triggerHeartbeatNtf: + type: boolean + +#-------- Definition of YAML arrays for name-contained IOCs ---------------------- + NtfSubscriptionControl-Multiple: + type: array + items: + $ref: '#/components/schemas/NtfSubscriptionControl-Single' + + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + resources-subscriptionControlNrm: + oneOf: + - $ref: '#/components/schemas/NtfSubscriptionControl-Single' + - $ref: '#/components/schemas/HeartbeatControl-Single' \ No newline at end of file diff --git a/TS28623_ThresholdMonitorNrm.yaml b/TS28623_ThresholdMonitorNrm.yaml new file mode 100644 index 0000000..d4fd1aa --- /dev/null +++ b/TS28623_ThresholdMonitorNrm.yaml @@ -0,0 +1,76 @@ +openapi: 3.0.1 +info: + title: Threshold Monitor NRM + version: 18.2.0 + description: >- + OAS 3.0.1 definition of the Threshold Monitor NRM fragment + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. +externalDocs: + description: 3GPP TS 28.623; Generic NRM,Threshold Monitor NRM + url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ +paths: {} +components: + schemas: +#-------- Definition of types----------------------------------------------------- + ThresholdInfo: + type: object + properties: + performanceMetrics: + type: array + items: + type: string + thresholdDirection: + type: string + enum: + - UP + - DOWN + - UP_AND_DOWN + thresholdValue: + oneOf: + - type: integer + - $ref: 'TS28623_ComDefs.yaml#/components/schemas/Float' + hysteresis: + oneOf: + - type: integer + minimum: 0 + - type: number + format: float + + +#-------- Definition of concrete IOCs -------------------------------------------- + ThresholdMonitor-Single: + allOf: + - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top' + - type: object + properties: + attributes: + type: object + properties: + administrativeState: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/AdministrativeState' + operationalState: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/OperationalState' + thresholdInfoList: + type: array + items: + $ref: '#/components/schemas/ThresholdInfo' + monitorGranularityPeriod: + type: integer + minimum: 1 + objectInstances: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + rootObjectInstances: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + +#-------- Definition of YAML arrays for name-contained IOCs ---------------------- + ThresholdMonitor-Multiple: + type: array + items: + $ref: '#/components/schemas/ThresholdMonitor-Single' + +#-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- + resources-thresholdMonitorNrm: + oneOf: + - $ref: '#/components/schemas/ThresholdMonitor-Single' diff --git a/TS28623_TraceControlNrm.yaml b/TS28623_TraceControlNrm.yaml index 3400725..fb231f4 100644 --- a/TS28623_TraceControlNrm.yaml +++ b/TS28623_TraceControlNrm.yaml @@ -1,13 +1,13 @@ openapi: 3.0.1 info: title: Trace Control NRM - version: 18.5.0 + version: 18.6.0 description: >- OAS 3.0.1 definition of the Trace Control NRM fragment © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 28.623; Generic NRM:Trace Control NRM + description: 3GPP TS 28.623; Generic NRM,Trace Control NRM url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/ paths: {} components: @@ -21,10 +21,14 @@ components: - IMMEDIATE_MDT_ONLY - LOGGED_MDT_ONLY - TRACE_ONLY - - IMMEDIATE_MDT AND TRACE + - IMMEDIATE_MDT_AND_TRACE - RLF_REPORT_ONLY - RCEF_REPORT_ONLY - LOGGED_MBSFN_MDT + - 5GC_UE_LEVEL_MEASUREMENTS_ONLY + - TRACE_AND_5GC_UE_LEVEL_MEASUREMENTS + - IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS + - TRACE_AND_IMMEDIATE_MDT_AND_5GC_UE_LEVEL_MEASUREMENTS listOfInterfaces-Type: description: The interfaces to be recorded in the Network Element. See 3GPP TS 32.422 clause 5.5 for additional details. @@ -1363,6 +1367,22 @@ components: $ref: '#/components/schemas/immediateMDTConfig-Type' loggedMDTConfig: $ref: '#/components/schemas/loggedMDTConfig-Type' + + UEMeasConfig-Type: + description: UE level measurements configuration parameters for 5G system. See details in 3GPP TS 28.622 clause 4.3.x. + type: object + properties: + ueMeasurements: + type: string + ueMeasGranularityPeriod: + type: integer + nfTypeToMeasure: + type: string + objectInstances: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + rootObjectInstances: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + AreaScope: oneOf: - type: array @@ -1444,6 +1464,8 @@ components: $ref: '#/components/schemas/traceConfig-Type' mdtConfig: $ref: '#/components/schemas/mdtConfig-Type' + ueMeasConfig: + $ref: '#/components/schemas/UEMeasConfig-Type' #-------- end of Definition of types used in Trace control NRM fragment ---------- @@ -1456,7 +1478,7 @@ components: attributes: $ref: '#/components/schemas/TraceJob-Attr' Files: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Files-Multiple' + $ref: 'TS28623_FileManagementNrm.yaml#/components/schemas/Files-Multiple' #-------- Definition of YAML arrays for name-contained IOCs ---------------------- @@ -1465,6 +1487,6 @@ components: items: $ref: '#/components/schemas/TraceJob-Single' #-------- Definitions in TS 28.623 for TS 28.532 --------------------------------- - resources-TraceControlNrm: + resources-traceControlNrm: oneOf: - $ref: '#/components/schemas/TraceJob-Single' diff --git a/TS29122_AsSessionWithQoS.yaml b/TS29122_AsSessionWithQoS.yaml index 888bfb4..f8eeacd 100644 --- a/TS29122_AsSessionWithQoS.yaml +++ b/TS29122_AsSessionWithQoS.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: 3gpp-as-session-with-qos - version: 1.3.0-alpha.4 + version: 1.3.0-alpha.5 description: | API for setting us an AS session with required QoS. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.122 V18.4.0 T8 reference point for Northbound APIs + description: 3GPP TS 29.122 V18.5.0 T8 reference point for Northbound APIs url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.122/' security: @@ -507,8 +507,10 @@ components: description: Identifies the list of UE address. multiModalId: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/MultiModalId' - protoDesc: - $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ProtoDesc' + protoDescUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + protoDescDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' qosReference: type: string description: Identifies a pre-defined QoS information @@ -559,17 +561,19 @@ components: directNotifInd: type: boolean description: > - Indicates whether the direct event notification is requested (true) or not (false). - Default value is false. + Indicates whether the direct event notification is requested (true) or not (false) for + the provided and/or previously provided QoS monitoring parameter(s). tscQosReq: $ref: '#/components/schemas/TscQosRequirement' - l4sInfo: + l4sInd: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/UplinkDownlinkSupport' requestTestNotification: type: boolean description: > Set to true by the SCS/AS to request the SCEF to send a test notification as defined in clause 5.2.5.3. Set to false or omitted otherwise. + tempInValidity: + $ref: 'TS29565_Ntsctsf_QoSandTSCAssistance.yaml#/components/schemas/TemporalInValidity' websockNotifConfig: $ref: 'TS29122_CommonData.yaml#/components/schemas/WebsockNotifConfig' events: @@ -587,15 +591,21 @@ components: description: > Contains media component data for a single-modal data flow(s). The key of the map is the medCompN attribute. - pduSetQos: + pduSetQosDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' + pduSetQosUl: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' rTLatencyInd: type: boolean description: > Indicates the service data flow needs to meet the Round-Trip (RT) latency requirement of the service, when it is included and set to "true". - The default value is "false" if omitted. periodInfo: - $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/PeriodicityInfo' + The default value is "false" if omitted. + + periodUl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSec' + periodDl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSec' rttMon: $ref: '#/components/schemas/QosMonitoringInformation' qosMonDatRate: @@ -685,13 +695,16 @@ components: directNotifInd: type: boolean description: > - Indicates whether the direct event notification is requested (true) or not (false). + Indicates whether the direct event notification is requested (true) or not (false) for + the provided QoS monitoring parameter(s). notificationDestination: $ref: 'TS29122_CommonData.yaml#/components/schemas/Link' tscQosReq: $ref: '#/components/schemas/TscQosRequirementRm' - l4sInfo: + l4sInd: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/UplinkDownlinkSupport' + tempInValidity: + $ref: 'TS29565_Ntsctsf_QoSandTSCAssistance.yaml#/components/schemas/TemporalInValidity' events: description: > Represents the updated list of user plane event(s) to which the SCS/AS requests to @@ -708,7 +721,9 @@ components: description: > Contains media component data for a single-modal data flow(s). The key of the map is the medCompN attribute. - pduSetQos: + pduSetQosDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosParaRm' + pduSetQosUl: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosParaRm' rTLatencyInd: type: boolean @@ -716,10 +731,14 @@ components: Indicates the service data flow needs to meet the Round-Trip (RT) latency requirement of the service, when it is included and set to "true". The default value is "false" if omitted. - protoDesc: - $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ProtoDesc' - periodInfo: - $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/PeriodicityInfo' + protoDescUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + protoDescDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + periodUl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSecRm' + periodDl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSecRm' qosDuration: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSecRm' qosInactInt: @@ -853,12 +872,6 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' dlConInfo: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - cimf: - type: boolean - description: > - Represents the congestion information measurement failure indicator. When set to "true", - it indicates that a congestion information failure has occurred. Default value is false - if omitted. UserPlaneNotificationData: description: Represents the parameters to be conveyed in a user plane event(s) notification. @@ -1100,8 +1113,20 @@ components: rTLatencyReq: type: boolean description: Round-Trip latency requirement of the service data flow. - pduSetQos: + pduSetQosDl: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' + pduSetQosUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' + l4sInd: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/UplinkDownlinkSupport' + protoDescDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + protoDescUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + periodUl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSec' + periodDl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSec' evSubsc: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EventsSubscReqData' @@ -1164,8 +1189,20 @@ components: rTLatencyReq: type: boolean description: Round-Trip latency requirement of the service data flow. - pduSetQos: - $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' + pduSetQosDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosParaRm' + pduSetQosUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosParaRm' + l4sInd: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/UplinkDownlinkSupport' + protoDescDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + protoDescUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + periodUl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSecRm' + periodDl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSecRm' evSubsc: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EventsSubscReqDataRm' nullable: true diff --git a/TS29122_MonitoringEvent.yaml b/TS29122_MonitoringEvent.yaml index b272d21..b81a2ff 100644 --- a/TS29122_MonitoringEvent.yaml +++ b/TS29122_MonitoringEvent.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: 3gpp-monitoring-event - version: 1.3.0-alpha.4 + version: 1.3.0-alpha.5 description: | API for Monitoring Event. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.122 V18.4.0 T8 reference point for Northbound APIs + description: 3GPP TS 29.122 V18.5.0 T8 reference point for Northbound APIs url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.122/' security: @@ -694,16 +694,20 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/MacAddr48' revocationNotifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' - reqRangingSlRes: + reqRangSlRes: type: array items: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangingSlResult' minItems: 1 relatedUEs: - type: array - items: + type: object + additionalProperties: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RelatedUE' - minItems: 1 + minProperties: 1 + description: > + Contains a list of the related UE(s) for the ranging and sidelink positioning and the + corresponding information. + The key of the map shall be a any unique string set to the value. required: - notificationDestination - monitoringType @@ -958,55 +962,19 @@ components: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/LdrType' achievedQos: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/MinorLocationQoS' - relatedApplicationlayerId: - type: string + relAppLayerId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' rangeDirection: - $ref: '#/components/schemas/RangeDirection' - twodrelativeLocation: - $ref: '#/components/schemas/TwodrelativeLocation' - threedrelativeLocation: - $ref: '#/components/schemas/ThreedrelativeLocation' - relativeVelocity: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangeDirection' + twoDRelLoc: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/2DRelativeLocation' + threeDRelLoc: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/3DRelativeLocation' + relVelocity: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/VelocityEstimate' upCumEvtRep: $ref: '#/components/schemas/UpCumEvtRep' - RangeDirection: - description: Represents a range and direction from a point A to a point B. - type: object - properties: - range: - type: number - azimuthDirection: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Angle' - elevationDirection: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Angle' - - - TwodrelativeLocation: - description: Represents a relative 2D location with uncertainty ellipse. - type: object - properties: - semiMinor: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Uncertainty' - semiMajor: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Uncertainty' - orientationAngle: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Angle' - - ThreedrelativeLocation: - description: Represents a relative 3D location with uncertainty ellipsoid. - type: object - properties: - semiMinor: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Uncertainty' - semiMajor: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Uncertainty' - verticalUncertainty: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Uncertainty' - orientationAngle: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Angle' - FailureCause: description: Represents the reason of communication failure. type: object diff --git a/TS29175_Nimsas_MediaControl.yaml b/TS29175_Nimsas_MediaControl.yaml index 9895e49..a4aea9b 100644 --- a/TS29175_Nimsas_MediaControl.yaml +++ b/TS29175_Nimsas_MediaControl.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 'IMS AS MediaControl Service' - version: '1.0.0-alpha.1' + version: 1.0.0-alpha.2 description: | Nimsas_MediaControl Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.175 V1.0.0; IP Multimedia Subsystem; IP Multimedia Subsystem (IMS) Application + 3GPP TS 29.175 V18.0.0; IP Multimedia Subsystem; IP Multimedia Subsystem (IMS) Application Server (AS) Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.175' @@ -158,6 +158,8 @@ components: $ref: '#/components/schemas/MediaInstruction' dcMediaSpecification: $ref: '#/components/schemas/DcMediaSpecification' + arMediaSpecification: + $ref: '#/components/schemas/ArMediaSpecification' mediaProcessingUrl: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' @@ -186,7 +188,7 @@ components: mdc2EndpointMf: $ref: 'TS29571_CommonData.yaml#/components/schemas/Endpoint' mdc2Protocol: - type: string + $ref: 'TS29176_Nmf_MRM.yaml#/components/schemas/Mdc2Protocol' streams: description: > Contains a data channel mapping and configuration information. The streamId @@ -196,6 +198,15 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/DcStream' minProperties: 1 + ArMediaSpecification: + description: The AR media specification information. + type: object + required: + - mediaProcessingSpec + properties: + mediaProcessingSpec: + type: string + # ENUMS MediaInstruction: @@ -213,4 +224,3 @@ components: description: > This string provides forward-compatibility with future extensions to the enumeration and is not used to encode content defined in the present version of this API. - diff --git a/TS29175_Nimsas_SessionEventControl.yaml b/TS29175_Nimsas_SessionEventControl.yaml index 3a956f6..a84151b 100644 --- a/TS29175_Nimsas_SessionEventControl.yaml +++ b/TS29175_Nimsas_SessionEventControl.yaml @@ -3,15 +3,15 @@ openapi: 3.0.0 info: title: 'IMS AS SessionEventControl Service' - version: '1.0.0-alpha.1' + version: 1.0.0-alpha.2 description: | Nimsas_SessionEventControl Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.175 V1.0.0; IP Multimedia Subsystem; IP Multimedia Subsystem (IMS) Application + 3GPP TS 29.175 V18.0.0; IP Multimedia Subsystem; IP Multimedia Subsystem (IMS) Application Server (AS) Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.175/' diff --git a/TS29176_Nmf_MRM.yaml b/TS29176_Nmf_MRM.yaml index 26f707d..dc920e0 100644 --- a/TS29176_Nmf_MRM.yaml +++ b/TS29176_Nmf_MRM.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 'MF Media Resource Management (MRM) Service' - version: 1.0.0-alpha.1 + version: 1.0.0-alpha.2 description: | MF Media Resource Management (MRM) Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.176 V18.0.0; IP Multimedia Subsystem (IMS); Media Function (MF) Services; Stage 3. + 3GPP TS 29.176 V18.1.0; IP Multimedia Subsystem (IMS); Media Function (MF) Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.176/ servers: @@ -275,6 +275,7 @@ components: description: Represents the termination information. type: object required: + - terminationId - medias properties: terminationId: @@ -302,6 +303,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Endpoint' dcMedia: $ref: '#/components/schemas/DcMedia' + arMedia: + $ref: '#/components/schemas/ArMedia' mediaProcessingUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' @@ -330,7 +333,7 @@ components: localMdc2Endpoint: $ref: 'TS29571_CommonData.yaml#/components/schemas/Endpoint' mdc2Protocol: - type: string + $ref: '#/components/schemas/Mdc2Protocol' streams: type: object description: > @@ -347,3 +350,28 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/DcEndpoint' securitySetup: $ref: 'TS29571_CommonData.yaml#/components/schemas/SecuritySetup' + + ArMedia: + description: Represents the AR media descriptor. + type: object + required: + - mediaProcessingSpec + properties: + mediaProcessingSpec: + type: string + + Mdc2Protocol: + description: The type of the transport layer protocols for MDC2 interface. + anyOf: + - type: string + enum: + - UDP/DTLS/SCTP + - TCP + - UDP + - SCTP + - TCP/TLS + - SCTP/DTLS + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. diff --git a/TS29222_CAPIF_API_Invoker_Management_API.yaml b/TS29222_CAPIF_API_Invoker_Management_API.yaml index cd88fc9..4b716ba 100644 --- a/TS29222_CAPIF_API_Invoker_Management_API.yaml +++ b/TS29222_CAPIF_API_Invoker_Management_API.yaml @@ -4,12 +4,12 @@ info: title: CAPIF_API_Invoker_Management_API description: | API for API invoker management. - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.3.0-alpha.1" + version: "1.3.0-alpha.2" externalDocs: - description: 3GPP TS 29.222 V18.0.0 Common API Framework for 3GPP Northbound APIs + description: 3GPP TS 29.222 V18.5.0 Common API Framework for 3GPP Northbound APIs url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.222/ servers: @@ -354,6 +354,8 @@ components: description: > Generic information related to the API invoker such as details of the device or the application. + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' supportedFeatures: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: @@ -392,3 +394,5 @@ components: description: > Generic information related to the API invoker such as details of the device or the application. + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTimeRm' diff --git a/TS29222_CAPIF_API_Provider_Management_API.yaml b/TS29222_CAPIF_API_Provider_Management_API.yaml index 5abec6b..123c722 100644 --- a/TS29222_CAPIF_API_Provider_Management_API.yaml +++ b/TS29222_CAPIF_API_Provider_Management_API.yaml @@ -4,12 +4,12 @@ info: title: CAPIF_API_Provider_Management_API description: | API for API provider domain functions management. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.2.0-alpha.2" + version: "1.2.0-alpha.3" externalDocs: - description: 3GPP TS 29.222 V18.1.0 Common API Framework for 3GPP Northbound APIs + description: 3GPP TS 29.222 V18.5.0 Common API Framework for 3GPP Northbound APIs url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.222/ servers: @@ -255,6 +255,9 @@ components: domain function registrations.Shall be present in the HTTP response body if atleast one of the API provider domain function registration or update registration fails. + apiProvName: + type: string + description: Represents the API provider name. required: - regSec diff --git a/TS29222_CAPIF_Publish_Service_API.yaml b/TS29222_CAPIF_Publish_Service_API.yaml index c122ece..0d77335 100644 --- a/TS29222_CAPIF_Publish_Service_API.yaml +++ b/TS29222_CAPIF_Publish_Service_API.yaml @@ -4,12 +4,12 @@ info: title: CAPIF_Publish_Service_API description: | API for publishing service APIs. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.3.0-alpha.4" + version: "1.3.0-alpha.5" externalDocs: - description: 3GPP TS 29.222 V18.4.0 Common API Framework for 3GPP Northbound APIs + description: 3GPP TS 29.222 V18.5.0 Common API Framework for 3GPP Northbound APIs url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.222/ servers: @@ -359,6 +359,9 @@ components: ccfId: type: string description: CAPIF core function identifier. + apiProvName: + type: string + description: Represents the API provider name. required: - apiName diff --git a/TS29222_CAPIF_Security_API.yaml b/TS29222_CAPIF_Security_API.yaml index 53ddf1c..15307a1 100644 --- a/TS29222_CAPIF_Security_API.yaml +++ b/TS29222_CAPIF_Security_API.yaml @@ -4,12 +4,12 @@ info: title: CAPIF_Security_API description: | API for CAPIF security management. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.3.0-alpha.3" + version: "1.3.0-alpha.4" externalDocs: - description: 3GPP TS 29.222 V18.4.0 Common API Framework for 3GPP Northbound APIs + description: 3GPP TS 29.222 V18.5.0 Common API Framework for 3GPP Northbound APIs url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.222/ servers: @@ -407,10 +407,10 @@ components: authorizationInfo: type: string description: Authorization related information - authorizationFlow: + grantType: type: array items: - $ref: '#/components/schemas/AuthorizationFlow' + $ref: '#/components/schemas/OAuthGrantType' minItems: 1 required: - prefSecurityMethods @@ -449,16 +449,19 @@ components: type: string enum: - client_credentials + - authorization_code client_id: type: string resOwnerId: - type: string + $ref: '#/components/schemas/ResOwnerId' client_secret: type: string scope: type: string authCode: type: string + redirect_uri: + type: string required: - grant_type - client_id @@ -490,17 +493,27 @@ components: properties: iss: type: string - resOwnerId: - type: string scope: type: string exp: $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + resOwnerId: + $ref: '#/components/schemas/ResOwnerId' required: - iss - scope - exp + ResOwnerId: + type: object + description: > + Represents the identifier of the resource owner. + properties: + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + anyOf: + - required: [gpsi] + AccessTokenErr: type: object description: Represents an error in the access token request. @@ -521,15 +534,6 @@ components: required: - error - AuthorizationCodeRsp: - type: object - description: Represents the authorization code response information. - properties: - authCode: - type: string - required: - - authCode - Cause: anyOf: - type: string @@ -550,13 +554,13 @@ components: - UNEXPECTED_REASON: The revocation of the authorization of the API invoker is due to unexpected reason. - AuthorizationFlow: + OAuthGrantType: anyOf: - type: string enum: - - CLIENT_CREDENTIALS_FLOW - - AUTHORIZATION_CODE_FLOW - - AUTHORIZATION_CODE_FLOW_WITH_PKCE + - CLIENT_CREDENTIALS + - AUTHORIZATION_CODE + - AUTHORIZATION_CODE_WITH_PKCE - type: string description: > This string provides forward-compatibility with future extensions to the enumeration and @@ -564,9 +568,6 @@ components: description: | Indicates the supported authorization flow (e.g. client credentials flow, authorization code flow, etc.) to the API invoker. Possible values are: - - CLIENT_CREDENTIALS_FLOW: - The supported authorization flow is client credentials flow. - - AUTHORIZATION_CODE_FLOW: - The supported authorization flow is authorization code flow. - - AUTHORIZATION_CODE_FLOW_WITH_PKCE: - The supported authorization flow is authorization code flow with PKCE. + - CLIENT_CREDENTIALS: Indicate that the grant type is is client credentials flow. + - AUTHORIZATION_CODE: Indicate that the grant type is authorization code. + - AUTHORIZATION_CODE_WITH_PKCE: Indicate that the grant type is authorization code with PKCE. diff --git a/TS29257_UAE_C2OperationModeManagement.yaml b/TS29257_UAE_C2OperationModeManagement.yaml index fec6870..747b11f 100644 --- a/TS29257_UAE_C2OperationModeManagement.yaml +++ b/TS29257_UAE_C2OperationModeManagement.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: UAE Server C2 Operation Mode Management Service - version: 1.1.0-alpha.1 + version: 1.1.0-alpha.2 description: | UAE Server C2 Operation Mode Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.257 V18.1.0; Application layer support for Uncrewed Aerial System (UAS); + 3GPP TS 29.257 V18.3.0; Application layer support for Uncrewed Aerial System (UAS); UAS Application Enabler (UAE) Server Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.257/ @@ -90,7 +90,7 @@ paths: description: > No Content. The notification was succesfull and the C2 Operation Mode Management Completion status for the concerned UAS (i.e. pair of UAV - and UAV-C) was successfully received and acknowledged by the UASS. + and UAV-C) was successfully received and acknowledged by the service consumer. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -131,7 +131,7 @@ paths: description: > No Content. The notification was succesfull and the C2 Communication Mode selected by the concerned UAS (i.e. pair of UAV and UAV-C) was successfully - received and acknowledged by the UASS. + received and acknowledged by the service consumer. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -172,8 +172,8 @@ paths: description: > OK. The targeted C2 Communication Mode switching for the concerned UAS (i.e. pair of UAV and UAV-C) is successfully received. The response body - contains the feedback of the UASS on whether this C2 Communication Mode - switching is confirmed (i.e. validated) or not. + contains the feedback of the service consumer on whether this C2 Communication + Mode switching is confirmed (i.e. validated) or not. content: application/json: schema: @@ -182,7 +182,7 @@ paths: description: > No Content. The targeted C2 Communication Mode switching for the concerned UAS (i.e. pair of UAV and UAV-C) is successfully received and acknowledged, - and the UASS does not need to confirm (i.e. validate) it. + and the service consumer does not need to confirm (i.e. validate) it. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': diff --git a/TS29257_UAE_ChangeUSSManagement.yaml b/TS29257_UAE_ChangeUSSManagement.yaml index ac99321..d926af3 100644 --- a/TS29257_UAE_ChangeUSSManagement.yaml +++ b/TS29257_UAE_ChangeUSSManagement.yaml @@ -2,20 +2,20 @@ openapi: 3.0.0 info: title: UAE Server USS Change Management Service - version: 1.0.0-alpha.1 + version: 1.0.0-alpha.2 description: | UAE Server USS Change Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.257 V18.1.0; Application layer support for Uncrewed Aerial System (UAS); + 3GPP TS 29.257 V18.3.0; Application layer support for Uncrewed Aerial System (UAS); UAS Application Enabler (UAE) Server Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.257/ servers: - - url: '{apiRoot}/uae-usschange-mngt/v1' + - url: '{apiRoot}/uae-ucm/v1' variables: apiRoot: default: https://example.com @@ -42,6 +42,7 @@ paths: type: array items: $ref: '#/components/schemas/USSChangePolicy' + minItems: 0 '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -114,7 +115,47 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' -#Editor's Note: The definition of the notifications is FFS. + callbacks: + USSChangeNotif: + '{$request.body#/ussChangePol/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/USSChangeNotif' + responses: + '204': + description: > + No Content. The USS Change Notification is successfully received and + acknowledged. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' /policies/{policyId}: @@ -289,10 +330,10 @@ paths: /request-usschange: post: - summary: Request USS change. + summary: Enables to request USS change. operationId: RequestUSSChange tags: - - Request USS Change + - USS Change Request requestBody: required: true content: @@ -302,7 +343,7 @@ paths: responses: '204': description: > - No Content. The USS change request is successfully received. + No Content. The USS change request is successfully received and processed. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -341,19 +382,24 @@ components: scopes: {} schemas: + +# +# STRUCTURED DATA TYPES +# + USSChangePolReq: description: > Represents the parameters to request the creation/Update of a USS Change Policy. type: object properties: - uassId: + requestorId: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' ussChangePol: $ref: '#/components/schemas/USSChangePolicy' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - uassId + - requestorId - ussChangePol USSChangePolResp: @@ -375,6 +421,15 @@ components: $ref: 'TS29257_UAE_C2OperationModeManagement.yaml#/components/schemas/UasId' notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + uasRegArea: + $ref: '#/components/schemas/ServArea' + uasAllowedRoute: + type: array + items: + $ref: '#/components/schemas/UasRoute' + minItems: 1 + multiUssPol: + $ref: '#/components/schemas/MultiUssPol' required: - uasId - notifUri @@ -386,17 +441,243 @@ components: properties: notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + uasRegArea: + $ref: '#/components/schemas/ServArea' + uasAllowedRoute: + type: array + items: + $ref: '#/components/schemas/UasRoute' + minItems: 1 + multiUssPol: + $ref: '#/components/schemas/MultiUssPol' + + MultiUssPol: + description: Represents a Multi-USS policy. + type: object + properties: + servingUssId: + $ref: '#/components/schemas/UssId' + servingUssInfo: + type: string + ussChangeArea: + $ref: '#/components/schemas/ServArea' + allowedTgtUsss: + type: array + items: + $ref: '#/components/schemas/UssInfo' + minItems: 1 + required: + - servingUssId + - servingUssInfo + - ussChangeArea + + ServArea: + description: Represents a service area. + type: object + properties: + ncgiList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NcgiTai' + minItems: 1 + description: List of NR cell Ids + taiList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Tai' + minItems: 1 + description: List of tracking area Ids + geographicAreaList: + type: array + items: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea' + minItems: 1 + oneOf: + - anyOf: + - required: [ncgiList] + - required: [taiList] + - required: [geographicAreaList] + + UasRoute: + description: Represents the UAS route. + type: object + properties: + route: + type: object + additionalProperties: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea' + minProperties: 2 + description: > + Contains a list of two or more ordered geographic area(s) that constitute the UAS route. + The key of the map shall be an unsigned integer (with the minimum value being 1) + indicating the order of the geographic area, provided within the corresponding map + entry, in the derivation of the route, with the first map entry being the start of the + route and the last entry of the map being the end of the route. + required: + - route + + UssInfo: + description: Represents USS information. + type: object + properties: + ussId: + $ref: '#/components/schemas/UssId' + ussServArea: + $ref: '#/components/schemas/ServArea' + ussServReqs: + type: array + items: + $ref: '#/components/schemas/ServReq' + minItems: 1 + dnais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + minItems: 1 + lunId: + type: string + required: + - ussId + - ussServArea + - ussServReqs + - dnais + - lunId + + ServReq: + description: > + Represents a service requirement. + metric. + type: object + properties: + reqName: + type: string + reqValue: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Bytes' + required: + - reqName + - reqValue USSChangeReq: description: Represents the parameters to request for USS change. type: object properties: - uassId: + requestorId: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' uasId: $ref: 'TS29257_UAE_C2OperationModeManagement.yaml#/components/schemas/UasId' + targetUssId: + $ref: '#/components/schemas/UssId' + targetUssInfo: + $ref: '#/components/schemas/TgtUssInfo' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - uassId + - requestorId - uasId + + TgtUssInfo: + description: Represents the target USS related information. + type: object + properties: + ussEdpt: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + ussServReqs: + type: array + items: + $ref: '#/components/schemas/ServReq' + minItems: 1 + dnais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + minItems: 1 + lunId: + type: string + required: + - ussEdpt + + USSChangeNotif: + description: Represents the USS Change Notification. + type: object + properties: + event: + $ref: '#/components/schemas/UssChangeEvent' + polConfigStatus: + type: boolean + default: false + description: > + Indicates the status of the USS change policy configuration. + true indicates that the USS change policy configuration was successful. + false indicates that the USS change policy configuration failed. + tgtUssId: + $ref: '#/components/schemas/UssId' + ussChgInfo: + $ref: '#/components/schemas/UssChgInfo' + required: + - event + + UssChgInfo: + description: Represents the target USS related information. + type: object + properties: + servingUssId: + $ref: '#/components/schemas/UssId' + targetUssId: + $ref: '#/components/schemas/UssId' + lunId: + type: string + mobilityEvent: + $ref: '#/components/schemas/MobilityEvent' + required: + - servingUssId + + +# SIMPLE DATA TYPES +# + + + UssId: + description: > + Represents the identifier of a USS, encoded in the form of e.g., an FQDN, a URI, etc. + type: string + + +# +# ENUMERATIONS +# + + UssChangeEvent: + anyOf: + - type: string + enum: + - USS_CHG_POL_CONFIG_STATUS + - UAE_CLIENT_ASSIST_USS_CHG + - UAE_SERVER_TRIGG_USS_CHG + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents a USS Change Event. + Possible values are: + - USS_CHG_POL_CONFIG_STATUS: Indicates that the USS Change Event is USS Change Policy + Configuration Status. + - UAE_CLIENT_ASSIST_USS_CHG: Indicates that the USS Change Event is UAE Client Assisted USS + Change. + - UAE_SERVER_TRIGG_USS_CHG: Indicates that the USS Change Event is UAE Server initiated + USS Change Trigger. + + MobilityEvent: + anyOf: + - type: string + enum: + - OUT_OF_USS_SERV_AREA + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents a mobility event. + Possible values are: + - OUT_OF_USS_SERV_AREA: Indicates that the mobility event is the expected UAV mobility to a + service area that is outside the current serving USS's service area. diff --git a/TS29257_UAE_DAASupport.yaml b/TS29257_UAE_DAASupport.yaml index 992ca04..e224926 100644 --- a/TS29257_UAE_DAASupport.yaml +++ b/TS29257_UAE_DAASupport.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: UAE Server DAA Support Service - version: 1.0.0-alpha.2 + version: 1.0.0-alpha.3 description: | UAE Server DAA Support Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.257 V18.2.0; Application layer support for Uncrewed Aerial System (UAS); + 3GPP TS 29.257 V18.3.0; Application layer support for Uncrewed Aerial System (UAS); UAS Application Enabler (UAE) Server Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.257/ @@ -168,16 +168,15 @@ paths: responses: '200': description: > - OK. The DAA event notification is successfully received and acknowledged, and - the UASS returns updated/additional DAA related event information in the - response body. + OK. The DAA Events Notification is successfully received and acknowledged, and + updated/additional DAA related event information is returned in the response body. content: application/json: schema: $ref: '#/components/schemas/DAAEventsInfo' '204': description: > - No Content. The DAA event notification is successfully received and + No Content. The DAA Events Notification is successfully received and acknowledged. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' @@ -436,14 +435,14 @@ components: Represents the parameters to request the creation of a DAA Policy. type: object properties: - uassId: + requestorId: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' daaPol: $ref: '#/components/schemas/DAAPolicy' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - uassId + - requestorId - daaPol DAAPolResp: @@ -465,9 +464,12 @@ components: $ref: 'TS29257_UAE_C2OperationModeManagement.yaml#/components/schemas/UasId' notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + daaAppPol: + $ref: '#/components/schemas/DAAAppPolicy' required: - uasId - notifUri + - daaAppPol DAAPolicyPatch: description: > @@ -476,12 +478,23 @@ components: properties: notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + daaAppPol: + $ref: '#/components/schemas/DAAAppPolicy' + + DAAAppPolicy: + description: Represents a DAA Application Policy. + type: object + properties: + polContainer: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Bytes' + anyOf: + - required: [polContainer] InformDAAEventsReq: description: Represents the parameters to report DAA related event(s). type: object properties: - uassId: + requestorId: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' uasId: $ref: 'TS29257_UAE_C2OperationModeManagement.yaml#/components/schemas/UasId' @@ -493,12 +506,12 @@ components: suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - uassId + - requestorId - uasId - daaEventsInfo DAAPolConfigNotif: - description: Represents the parameters to request for DAA. + description: Represents a DAA Policy Configuration Status Notification. type: object properties: status: @@ -507,7 +520,7 @@ components: - status DAAEventsInfo: - description: Represents the parameters to request for DAA. + description: Represents a DAA Events Notification. type: object properties: uasId: @@ -524,7 +537,7 @@ components: - daaEventsInfo DAAEvent: - description: Represents the parameters to request for DAA. + description: Represents a DAA event related information. type: object properties: uasId: @@ -546,7 +559,7 @@ components: This string provides forward-compatibility with future extensions to the enumeration and is not used to encode content defined in the present version of this API. description: | - Represents DAA Policy configuration completion status. + Represents the DAA Policy configuration completion status. Possible values are: - SUCCESSFUL: Indicates that the DAA Policy configuration was successful. - NOT_SUCCESSFUL: Indicates that the DAA Policy configuration was not successful. diff --git a/TS29257_UAE_UAVDynamicInfo.yaml b/TS29257_UAE_UAVDynamicInfo.yaml new file mode 100644 index 0000000..451d199 --- /dev/null +++ b/TS29257_UAE_UAVDynamicInfo.yaml @@ -0,0 +1,406 @@ +openapi: 3.0.0 + +info: + title: UAE Server UAV Dynamic Information Service + version: 1.0.0-alpha.1 + description: | + UAE Server UAV Dynamic Information Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.257 V18.3.0; Application layer support for Uncrewed Aerial System (UAS); + UAS Application Enabler (UAE) Server Services; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.257/ + +servers: + - url: '{apiRoot}/uae-udi/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /subscriptions: + post: + summary: Request the creation of a UAV Dynamic Information Subscription. + operationId: CreateDynUavSubsc + tags: + - UAV Dynamic Information Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UAVDynInfoSubsc' + responses: + '201': + description: > + Created. The UAV Dynamic Information Subscription is successfully created and a + representation of the created Individual UAV Dynamic Information Subscription resource + shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/UAVDynInfoSubsc' + headers: + Location: + description: > + Contains the URI of the created Individual UAV Dynamic Information Subscription + resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + UAVDynInfoNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UAVDynInfoNotif' + responses: + '204': + description: > + No Content. The UAV Dynamic Information Notification is successfully received + and Acknowledged. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /subscriptions/{subscId}: + parameters: + - name: subscId + in: path + description: > + Represents the identifier of the Individual UAV Dynamic Information Subscription resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual UAV Dynamic Information Subscription resource. + operationId: GetIndDynUavSubsc + tags: + - Individual UAV Dynamic Information Subscription (Document) + responses: + '200': + description: > + OK. The representation of the requested Individual UAV Dynamic Information Subscription + resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/UAVDynInfoSubsc' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the update of an existing Individual UAV Dynamic Information Subscription resource. + operationId: UpdateIndDynUavSubsc + tags: + - Individual UAV Dynamic Information Subscription (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UAVDynInfoSubsc' + responses: + '200': + description: > + OK. The Individual UAV Dynamic Information Subscription resource is successfully updated + and a representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/UAVDynInfoSubsc' + '204': + description: > + No Content. The Individual UAV Dynamic Information Subscription resource is successfully + updated and no content is returned in the response body + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the modification of an existing Individual UAV Dynamic Information Subscription resource. + operationId: ModifyIndDynUavSubsc + tags: + - Individual UAV Dynamic Information Subscription (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/UAVDynInfoSubscPatch' + responses: + '200': + description: > + OK. The Individual UAV Dynamic Information Subscription resource is successfully + modified and a representation of the updated resource shall be returned in the response + body. + content: + application/json: + schema: + $ref: '#/components/schemas/UAVDynInfoSubsc' + '204': + description: > + No Content. The Individual UAV Dynamic Information Subscription resource is successfully + modified and no content is returned in the response body + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual UAV Dynamic Information Subscription resource. + operationId: DeleteIndDynUavSubsc + tags: + - Individual UAV Dynamic Information Subscription (Document) + responses: + '204': + description: > + No Content. The Individual UAV Dynamic Information Subscription resource is successfully + deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + UAVDynInfoSubsc: + description: > + Represents a UAV Dynamic Information Subscription. + type: object + properties: + uavId: + $ref: 'TS29257_UAE_C2OperationModeManagement.yaml#/components/schemas/UavId' + proxRangInfo: + $ref: '#/components/schemas/ProxRangInfo' + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - uavId + - proxRangInfo + - notifUri + + UAVDynInfoSubscPatch: + description: > + Represents the requested modifications to a UAV Dynamic Information Subscription. + type: object + properties: + proxRangInfo: + $ref: '#/components/schemas/ProxRangInfo' + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + + UAVDynInfoNotif: + description: > + Represents a UAV Dynamic Information Notification. + type: object + properties: + subscId: + type: string + hostUavLoc: + $ref: 'TS29122_MonitoringEvent.yaml#/components/schemas/LocationInfo' + uavsInfo: + type: array + items: + $ref: '#/components/schemas/UavInfo' + minItems: 1 + required: + - subscId + - hostUavLoc + - uavsInfo + + ProxRangInfo: + description: > + Represents the proximity range information. + type: object + properties: + range: + type: number + format: double + minimum: 0 + rangeInfo: + type: string + anyOf: + - required: [range] + - required: [rangeInfo] + + UavInfo: + description: > + Represents the UAV information related to the UAV detection in an application defined + proximity range. + type: object + properties: + nearbyUavId: + $ref: 'TS29257_UAE_C2OperationModeManagement.yaml#/components/schemas/UavId' + nearbyUavLoc: + $ref: 'TS29122_MonitoringEvent.yaml#/components/schemas/LocationInfo' + nearbyUavDist: + $ref: '#/components/schemas/UavDistance' + required: + - nearbyUavId + - nearbyUavLoc + - nearbyUavDist + + +# SIMPLE DATA TYPES +# + + UavDistance: + description: > + Represents the linear distance between two UAVs. + type: number + format: double + minimum: 0 + +# +# ENUMERATIONS +# diff --git a/TS29435_NSCE_FaultDiagnosis.yaml b/TS29435_NSCE_FaultDiagnosis.yaml new file mode 100644 index 0000000..19de556 --- /dev/null +++ b/TS29435_NSCE_FaultDiagnosis.yaml @@ -0,0 +1,462 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Fault Diagnosis Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Network Slice Fault Diagnosis Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-fd/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549. + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /subscriptions: + post: + summary: Request the creation of a Network Slice Fault Diagnosis Subscription. + operationId: CreateFaultDiagSubsc + tags: + - Network Slice Fault Diagnosis Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/FaultDiagSubsc' + responses: + '201': + description: > + Created. The Network Slice Fault Diagnosis Subscription is successfully created + and a representation of the created Individual Network Slice Fault Diagnosis + Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/FaultDiagSubsc' + headers: + Location: + description: > + Contains the URI of the created Individual Network Slice Fault Diagnosis + Subscription resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + FaultDiagNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/FaultDiagNotif' + responses: + '204': + description: > + No Content. The Network Slice Fault Diagnosis Notification is successfully + received and acknowledged. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /subscriptions/{subscriptionId}: + parameters: + - name: subscriptionId + in: path + description: > + Represents the identifier of the Individual Network Slice Fault Diagnosis + Subscription resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual Network Slice Fault Diagnosis Subscription resource. + operationId: GetIndFaultDiagSubsc + tags: + - Individual Network Slice Fault Diagnosis Subscription (Document) + responses: + '200': + description: > + OK. The requested Individual Network Slice Fault Diagnosis Subscription resource shall + be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/FaultDiagSubsc' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the fully update of an existing Individual Network Slice Fault Diagnosis Subscription resource. + operationId: UpdateIndFaultDiagSubsc + tags: + - Individual Network Slice Fault Diagnosis Subscription (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/FaultDiagSubsc' + responses: + '200': + description: > + OK. The Individual Network Slice Fault Diagnosis Subscription resource is + successfully updated and a representation of the updated resource shall be returned + in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/FaultDiagSubsc' + '204': + description: > + No Content. The Individual Network Slice Fault Diagnosis Subscription resource is + successfully updated and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the partially update of an existing Individual Network Slice Fault Diagnosis Subscription resource. + operationId: ModifyIndFaultDiagSubsc + tags: + - Individual Network Slice Fault Diagnosis Subscription (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/FaultDiagSubscPatch' + responses: + '200': + description: > + OK. The Individual Network Slice Fault Diagnosis Subscription resource is + successfully modified and a representation of the updated resource shall be returned + in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/FaultDiagSubsc' + '204': + description: > + No Content. The Individual Network Slice Fault Diagnosis Subscription resource is + successfully modified and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual Network Slice Fault Diagnosis Subscription resource. + operationId: DeleteIndFaultDiagSubsc + tags: + - Individual Network Slice Fault Diagnosis Subscription (Document) + responses: + '204': + description: > + No Content. The Individual Network Slice Fault Diagnosis Subscription resource is + successfully deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + FaultDiagSubsc: + type: object + description: Represents a Network Slice Fault Diagnosis subscription. + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + valServId: + type: string + description: > + Contains the identifier of the VAL Service to which the fault diagnosis is related. + valUeIds: + type: array + items: + type: string + description: > + Contains the list of the identifier(s) of the VAL UE(s) to which the subscription + is related. + minItems: 1 + netSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + description: Contains the identifier(s) of the network slice to be monitored. + minItems: 1 + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - notifUri + - valServId + + FaultDiagSubscPatch: + type: object + description: > + Represents the requested modifications to a Network Slice Fault Diagnosis subscription. + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + valUeIds: + type: array + items: + type: string + description: > + Contains the list of the identifier(s) of the VAL UE(s) to which the subscription + is related. + minItems: 1 + netSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + description: Contains the updated identifier(s) of the network slice to be monitored. + minItems: 1 + + FaultDiagNotif: + type: object + description: Represents a Network Slice Fault Diagnosis notification. + properties: + subscriptionId: + type: string + description: > + Contains the identifier of the subscription to which the Network Slice Fault + Diagnosis Notification is related. + faultRep: + $ref: '#/components/schemas/FaultReportInfo' + required: + - subscriptionId + - faultRep + + FaultReportInfo: + type: object + description: Represents the report of the fault diagnosis. + properties: + corelAlarm: + type: array + items: + $ref: '#/components/schemas/CorrelatedAlarm' + description: > + Contains the list of the correlated alarms. + minItems: 1 + required: + - corelAlarm + + CorrelatedAlarm: + type: object + description: Represents the correlated alarm information. + properties: + alarmType: + $ref: '#/components/schemas/AlarmType' + priority: + $ref: '#/components/schemas/Priority' + rootCause: + type: boolean + description: Indicates whether the event is the root cause of the events. + required: + - alarmType + + +# +# ENUMERATIONS +# + + AlarmType: + anyOf: + - type: string + enum: + - COMMUNICATIONS_ALARM + - PROCESSING_ERROR_ALARM + - ENVIRONMENTAL_ALARM + - QUALITY_OF_SERVICE_ALARM + - EQUIPMENT_ALARM + - INTEGRITY_VIOLATION + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents the alarm type(s). + Possible values are: + - COMMUNICATIONS_ALARM: An alarm associated with the procedures and/or processes required + to convey information from one point to another. + - PROCESSING_ERROR_ALARM: An alarm associated with a software or processing fault. + - ENVIRONMENTAL_ALARM: An alarm associated with a condition relating to an enclosure in + which the equipment resides. + - QUALITY_OF_SERVICE_ALARM: An alarm associated with a degradation in the quality of a + service. + - EQUIPMENT_ALARM: An alarm associated with an equipment fault. + - INTEGRITY_VIOLATION: An indication that information may have been illegally modified, + inserted or deleted. + + Priority: + anyOf: + - type: string + enum: + - CRITICAL + - MAJOR + - MINOR + - IGNORE + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents the prioritization of the fault associated with the correlated alarm. + Possible values are: + - CRITICAL: Indicates the prioritization of the fault is critical. + - MAJOR: Indicates the prioritization of the fault is major. + - MINOR: Indicates the prioritization of the fault is minor. + - IGNORE: Indicates the prioritization of the fault is ignore. diff --git a/TS29435_NSCE_InfoCollection.yaml b/TS29435_NSCE_InfoCollection.yaml new file mode 100644 index 0000000..3785fe1 --- /dev/null +++ b/TS29435_NSCE_InfoCollection.yaml @@ -0,0 +1,391 @@ +openapi: 3.0.0 + +info: + title: NSCE_InfoCollection + version: 1.0.0-alpha.4 + description: | + NSCE_InfoCollection Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: http://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-ic/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /subscriptions: + post: + summary: Request the creation of an Information Collection Subscription. + operationId: CreateInfoCollectSubscription + tags: + - Information Collection Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/InfoCollectSubsc' + responses: + '201': + description: Created. The Information Collection Subscription is successfully created and a representation of the created Individual Information Collection Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/InfoCollectSubsc' + headers: + Location: + description: > + Contains the URI of the newly created resource, according to the structure: + {apiRoot}/nsce-ic//subscriptions/{subscriptionId} + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + InfoCollectNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/InfoCollectNotif' + responses: + '204': + description: No Content. The Information Collection Notification is successfully received. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /subscriptions/{subscriptionId}: + parameters: + - name: subscriptionId + in: path + description: > + Represents the identifier of the Information Collection Subscription resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual Information Collection Subscription resource. + operationId: GetIndInfoCollectSubscription + tags: + - Individual Information Collection Subscription (Document) + responses: + '200': + description: OK. The requested Individual Information Collection Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/InfoCollectSubsc' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the update of an existing Individual Information Collection Subscription resource. + operationId: UpdateIndInfoCollectSubcription + tags: + - Individual Information Collection Subscription (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/InfoCollectSubsc' + responses: + '200': + description: OK. The Individual Information Collection Subscription resource is successfully updated and a representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/InfoCollectSubsc' + '204': + description: No Content. The Individual Information Collection Subscription resource is successfully updated and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the modification of an existing Individual Information Collection Subscription resource. + operationId: ModifyIndInfoCollectSubscription + tags: + - Individual Information Collection Subscription (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/InfoCollectSubscPatch' + responses: + '200': + description: > + OK. The Individual Information Collection Subscription resource is successfully modified and a representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/InfoCollectSubsc' + '204': + description: > + No Content. The Individual Information Collection Subscription resource is successfully modified and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual Information Collection Subscription resource. + operationId: DeleteIndInfoCollectSubcription + tags: + - Individual Information Collection Subscription (Document) + responses: + '204': + description: No Content. The Individual Information Collection Subscription resource is successfully deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + InfoCollectSubsc: + description: Represents an Information Collection subscription. + type: object + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + collectInfo: + $ref: '#/components/schemas/CollectInfo' + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + netSlicePerf: + $ref: 'TS29435_NSCE_PerfMonitoring.yaml#/components/schemas/ReportingData' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - notifUri + - collectInfo + + InfoCollectSubscPatch: + description: Represents the requested modifications of an Information Collection subscription. + type: object + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + collectInfo: + $ref: '#/components/schemas/CollectInfo' + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + + InfoCollectNotif: + description: Represents an Information Collection Notification. + type: object + properties: + subscriptionId: + type: string + description: > + Contains the identifier of the subscription to which the notification is related. + netSlicePerf: + type: array + description: Contains the network slice related performance and analytics report(s). + items: + $ref: 'TS29435_NSCE_PerfMonitoring.yaml#/components/schemas/ReportingData' + minItems: 1 + required: + - subscriptionId + - netSlicePerf + + CollectInfo: + type: object + properties: + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + qosMetric: + $ref: '#/components/schemas/QoSMetric' + repPeriod: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' + immRepFlag: + type: boolean + description: Identifies the request needs immediate reporting or not. + required: + - snssai + + QoSMetric: + type: object + properties: + qosType: + $ref: '#/components/schemas/QoSType' + latency: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Float' + throughput: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + jitter: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' + required: + - qosType + +# +# ENUMERATIONS DATA TYPES +# + + QoSType: + anyOf: + - type: string + enum: + - LATENCY + - THROUGHPUT + - JITTER + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration and is not used to encode + content defined in the present version of this API. + description: | + Represents the QoS metric type, e.g. latency, throughput, jitter, etc. + Possible values are: + - LATENCY: Indicates that the QoS type is latency. + - THROUGHPUT: Indicates that the QoS type is latency. + - JITTER: Indicates that the QoS type is latency. diff --git a/TS29435_NSCE_InterPLMNContinuity.yaml b/TS29435_NSCE_InterPLMNContinuity.yaml new file mode 100644 index 0000000..454f2cb --- /dev/null +++ b/TS29435_NSCE_InterPLMNContinuity.yaml @@ -0,0 +1,242 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Inter-PLMN Service Continuity Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Inter-PLMN Service Continuity Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-ipc/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /request: + post: + summary: Enables to request inter-PLMN application service continuity. + operationId: InterPlmnServContReq + tags: + - Inter-PLMN Application Service Continuity Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/InterPlmnServContReq' + responses: + '204': + description: > + No Content. The inter-PLMN application service continuity request is successfully + received and processed. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + MonitoringNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/InterPlmnServContNotif' + responses: + '204': + description: > + No Content. The Inter-PLMN Service Continuity Notification is successfully + received and processed. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + InterPlmnServContReq: + description: > + Represents the parameters to request inter-PLMN application service continuity. + type: object + properties: + valServId: + type: string + ueIds: + type: array + items: + type: string + minItems: 1 + servContReq: + $ref: '#/components/schemas/ServContReq' + targetPlmnId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId' + netSliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + targetServArea: + type: array + items: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea' + minItems: 1 + appQoSReqs: + $ref: '#/components/schemas/AppReqs' + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - valServId + - servContReq + - targetPlmnId + - netSliceId + - notifUri + + AppReqs: + description: > + Represents application QoS requirements. + type: object + properties: + reliability: + format: float + type: number + minimum: 0 + maximum: 100 + delay: + type: integer + minimum: 1 + jitter: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' + anyOf: + - required: [reliability] + - required: [delay] + - required: [jitter] + + InterPlmnServContNotif: + description: > + Represents an Inter-PLMN Service Continuity Notification. + type: object + properties: + valServId: + type: string + ueIds: + type: array + items: + type: string + minItems: 1 + servContReq: + $ref: '#/components/schemas/ServContReq' + netSliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + tgtNsceServId: + type: string + tgtNsceAddr: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + targetServArea: + type: array + items: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea' + minItems: 1 + required: + - valServId + - servContReq + - netSliceId + + +# SIMPLE DATA TYPES +# + +# +# ENUMERATIONS +# + + ServContReq: + anyOf: + - type: string + enum: + - EXPECTED_MIGRATION + - PREDICTED_MIGRATION + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents a service continuity requirement. + Possible values are: + - EXPECTED_MIGRATION: Indicates that the service continuity requirement is the expected + migration of the VAL application (or a list of VAL UE(s) of the VAL application) to a + target area. + - PREDICTED_MIGRATION: Indicates that the service continuity requirement is the predicted + migration of the VAL application (or a list of VAL UE(s) of the VAL application) to a + target area. diff --git a/TS29435_NSCE_MultiSlicesOptimization.yaml b/TS29435_NSCE_MultiSlicesOptimization.yaml new file mode 100644 index 0000000..17f9e64 --- /dev/null +++ b/TS29435_NSCE_MultiSlicesOptimization.yaml @@ -0,0 +1,106 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Multiple Slices Optimization Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Multiple Slices Optimization Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-mso/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /request: + post: + summary: Request multiple slices optimization. + operationId: ReqMultiSlicesOptim + tags: + - Multiple Slices Optimization Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/MultiSlicesOptReq' + responses: + '204': + description: > + No Content. The multiple slices optimization request is successfully received and + processed. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + MultiSlicesOptReq: + description: > + Represents the multiple slices optimization request. + type: object + properties: + valServId: + type: string + description: Represents the identifier of the VAL service. + optZone: + $ref: 'TS29435_NSCE_NSInfoDelivery.yaml#/components/schemas/ServArea' + snssais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + minItems: 1 + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - valServId diff --git a/TS29435_NSCE_NSAllocation.yaml b/TS29435_NSCE_NSAllocation.yaml new file mode 100644 index 0000000..1a9cf26 --- /dev/null +++ b/TS29435_NSCE_NSAllocation.yaml @@ -0,0 +1,135 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Allocation Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Network Slice Allocation Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-nsa/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /request: + post: + summary: Request network slice allocation. + operationId: RequestNSAllocation + tags: + - Network Slice Allocation Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NwSliceAllocReq' + responses: + '200': + description: > + The network slice allocation request is successful received and processed + and the requested network slice allocation information shall be returned in the + response body. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/NwSliceAllocResp' + minItems: 1 + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + NwSliceAllocReq: + description: > + Represents the network slice allocation request. + type: object + properties: + valServiceId: + type: string + description: Represents the VAL service identifier. + valUeIds: + type: array + items: + type: string + minItems: 1 + description: Represents the list of VAL UEs ID. + locArea: + $ref: 'TS29435_NSCE_NSInfoDelivery.yaml#/components/schemas/ServArea' + sliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + nwSliceServProf: + $ref: 'TS28541_SliceNrm.yaml#/components/schemas/ServiceProfile' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - valServiceId + - locArea + + NwSliceAllocResp: + description: > + Represents the network slice allocation information. + type: object + properties: + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + nwSliceServProf: + $ref: 'TS28541_SliceNrm.yaml#/components/schemas/ServiceProfile' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - snssai + - nwSliceServProf diff --git a/TS29435_NSCE_NSDiagnostics.yaml b/TS29435_NSCE_NSDiagnostics.yaml new file mode 100644 index 0000000..ab542e8 --- /dev/null +++ b/TS29435_NSCE_NSDiagnostics.yaml @@ -0,0 +1,233 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Diagnostics Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Network Slice Diagnostics Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-nsd/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /request: + post: + summary: Request network slice diagnostics information. + operationId: RequestNSDiagnostics + tags: + - Network Slice Diagnostics Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NwSliceDiagReq' + responses: + '200': + description: > + The network slice diagnostics request is successful received and processed + and the requested network slice diagnostics information shall be returned in the + response body. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/NwSliceDiagResp' + minItems: 1 + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + NwSliceDiagReq: + description: > + Represents the network slice diagnostics request. + type: object + properties: + servDgradInfos: + $ref: '#/components/schemas/ServDgradInfo' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - servDgradInfos + + NwSliceDiagResp: + description: > + Represents the requested network slice diagnostics report. + type: object + properties: + startTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + endTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + dataReport: + type: array + items: + $ref: '#/components/schemas/DataReport' + minItems: 1 + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - startTime + - endTime + - dataReport + + ServDgradInfo: + description: > + Represents the degraded service information. + type: object + properties: + valServiceId: + type: string + reqErrors: + type: array + items: + $ref: '#/components/schemas/ErrorInfo' + minItems: 1 + required: + - valServiceId + - reqErrors + + ErrorInfo: + description: > + Represents error related information. + type: object + properties: + errorName: + $ref: '#/components/schemas/Error' + netSliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + ueIds: + type: array + items: + type: string + minItems: 1 + areaOfInterest: + $ref: 'TS29435_NSCE_NSInfoDelivery.yaml#/components/schemas/ServArea' + startTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + endTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + required: + - errorName + - netSliceId + - startTime + - endTime + + DataReport: + description: > + Represents the reported data. + type: object + properties: + errorName: + $ref: '#/components/schemas/Error' + dataType: + $ref: '#/components/schemas/DataType' + dataOutput: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Bytes' + required: + - errorName + - dataType + - dataOutput + + +# SIMPLE DATA TYPES +# + +# +# ENUMERATIONS +# + + Error: + anyOf: + - type: string + enum: + - COMMUNICATION_ERROR + - RTT_ABOVE_LIMIT + - QOS_DOWNGRADE + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration and is not used to encode + content defined in the present version of this API. + description: | + Represents the errors causing service degradation. + Possible values are: + - COMMUNICATION_ERROR: Indicates that the service degradation is due to a detected + communication error. + - RTT_ABOVE_LIMIT: Indicates that the service degradation is due to the packet round trip + time exceeding an upper threshold limit. + - QOS_DOWNGRADE: Indicates that the service degradation is due to QoS being downgraded. + + DataType: + anyOf: + - type: string + enum: + - UE_DATA + - NETWORK_DATA + - APPLICATION_DATA + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration and is not used to encode + content defined in the present version of this API. + description: | + Represents the reported data type. + Possible values are: + - UE_DATA: Indicates that the reported data type is UE data. + - NETWORK_DATA: Indicates that the reported data type is Network data. + - APPLICATION_DATA: Indicates that the reported data type is Application data. diff --git a/TS29435_NSCE_NSInfoDelivery.yaml b/TS29435_NSCE_NSInfoDelivery.yaml new file mode 100644 index 0000000..f304924 --- /dev/null +++ b/TS29435_NSCE_NSInfoDelivery.yaml @@ -0,0 +1,245 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Information Delivery Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Network Slice Information Delivery Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-nsid/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /slice-info-sets: + get: + summary: Request the retrieval of Network Slice Information. + operationId: RetrieveNetSliceInfo + tags: + - Network Slice Information Sets (Collection) + parameters: + - name: val-serv-id + in: query + description: Contains the identifier of the targeted VAL service. + required: true + schema: + type: string + - name: req-slice-info + in: query + description: Contains the requested Network Slice Information type(s). + required: false + schema: + type: array + items: + $ref: '#/components/schemas/ReqSliceInfo' + minItems: 1 + - name: supp-feats + in: query + description: > + Contains the list of supported features among the ones defined in clause 6.16.8. + This query parameter shall be present only when feature negotiation needs to take + place. + required: false + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + responses: + '200': + description: > + OK. The representation(s) of the "Individual Network Slice Information Set" resource(s) + corresponding to the requested Network Slice Information shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/NSInfoRetResp' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /slice-info-sets/deliver: + post: + summary: Enables to request Network Slice Information delivery to another entity. + operationId: DeliverNetSliceInfo + tags: + - Network Slice Information Delivery + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NSInfoDelReq' + responses: + '204': + description: > + No Content. The Network Slice Information delivery request is successfully received, + processed and completed. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + NSInfoRetResp: + description: > + Represents a Network Slice Information Retrieval response. + type: object + properties: + sliceInfo: + $ref: '#/components/schemas/NSInfoSet' + required: + - sliceInfo + + NSInfoDelReq: + description: > + Represents a Network Slice Information Delivery request. + type: object + properties: + valServId: + type: string + valUeIds: + type: array + items: + type: string + minItems: 1 + reqSliceInfo: + type: array + items: + $ref: '#/components/schemas/ReqSliceInfo' + minItems: 1 + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - valServId + - valUeIds + + NSInfoSet: + description: > + Represents a Network Slice Information Set. + type: object + properties: + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + sst: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + sliceCovArea: + $ref: '#/components/schemas/ServArea' + anyOf: + - required: [snssai] + - required: [sst] + - required: [sliceCovArea] + + ServArea: + description: > + Represents the network Slice Coverage Area. + type: object + properties: + tais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Tai' + minItems: 1 + geoAreas: + type: array + items: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea' + minItems: 1 + anyOf: + - required: [tais] + - required: [geoAreas] + + +# SIMPLE DATA TYPES +# + +# +# ENUMERATIONS +# + + ReqSliceInfo: + anyOf: + - type: string + enum: + - SNSSAI + - SST + - SLICE_COV_AREA + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents the requested Network Slice Information type. + Possible values are: + - SNSSAI: Indicates that the requested Network Slice Information is the S-NSSAI. + - SST: Indicates that the requested Network Slice Information is the SST. + - SLICE_COV_AREA: Indicates that the requested Network Slice Information is the Slice + Coverage Area. diff --git a/TS29435_NSCE_NSOptimization.yaml b/TS29435_NSCE_NSOptimization.yaml new file mode 100644 index 0000000..8032cca --- /dev/null +++ b/TS29435_NSCE_NSOptimization.yaml @@ -0,0 +1,389 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Optimization Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Network Slice Optimization Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-nso/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549. + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /subscriptions: + post: + summary: Request the creation of a Network Slice Optimization Subscription. + operationId: CreateNetSliceOptSubsc + tags: + - Network Slice Optimization Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NetSliceOptSubsc' + responses: + '201': + description: > + Created. The Network Slice Optimization Subscription is successfully created and + a representation of the created Individual Network Slice Optimization + Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/NetSliceOptSubsc' + headers: + Location: + description: > + Contains the URI of the created Individual Network Slice Optimization + Subscription resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + NetSliceOptNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NetSliceOptNotif' + responses: + '204': + description: > + No Content. The Network Slice Optimization Notification is successfully + received and acknowledged. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /subscriptions/{subscriptionId}: + parameters: + - name: subscriptionId + in: path + description: > + Represents the identifier of the Individual Network Slice Optimization + Subscription resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual Network Slice Optimization Subscription resource. + operationId: GetIndNetSliceOptSubsc + tags: + - Individual Network Slice Optimization Subscription (Document) + responses: + '200': + description: > + OK. The requested Individual Network Slice Optimization Subscription resource shall + be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/NetSliceOptSubsc' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the fully update of an existing Individual Network Slice Optimization Subscription resource. + operationId: UpdateIndNetSliceOptSubsc + tags: + - Individual Network Slice Optimization Subscription (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NetSliceOptSubsc' + responses: + '200': + description: > + OK. The Individual Network Slice Optimization Subscription resource is + successfully updated and a representation of the updated resource shall be returned + in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/NetSliceOptSubsc' + '204': + description: > + No Content. The Individual Network Slice Optimization Subscription resource is + successfully updated and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the partially update of an existing Individual Network Slice Optimization Subscription resource. + operationId: ModifyIndNetSliceOptSubsc + tags: + - Individual Network Slice Optimization Subscription (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/NetSliceOptSubscPatch' + responses: + '200': + description: > + OK. The Individual Network Slice Optimization Subscription resource is + successfully modified and a representation of the updated resource shall be returned + in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/NetSliceOptSubsc' + '204': + description: > + No Content. The Individual Network Slice Optimization Subscription resource is + successfully modified and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual Network Slice Optimization Subscription resource. + operationId: DeleteIndNetSliceOptSubsc + tags: + - Individual Network Slice Optimization Subscription (Document) + responses: + '204': + description: > + No Content. The Individual Network Slice Optimization Subscription resource is + successfully deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + NetSliceOptSubsc: + type: object + description: Represents a Network Slice Optimization subscription. + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + netSliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + policyId: + type: string + description: Identifies the VAL server policy. + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + secPolicId: + type: string + description: Identifies the the secondary policy for the network slice optimization. + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - notifUri + anyOf: + - required: [netSliceId] + - required: [dnn] + - required: [policyId] + - required: [expTime] + - required: [secPolicId] + + NetSliceOptSubscPatch: + type: object + description: > + Represents the requested modifications to a Network Slice Optimization subscription. + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + netSliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + policyId: + type: string + description: Identifies the VAL server policy. + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTimeRm' + secPolicId: + type: string + description: Identifies the the secondary policy for the network slice optimization. + required: + - notifUri + anyOf: + - required: [netSliceId] + - required: [dnn] + - required: [policyId] + - required: [expTime] + - required: [secPolicId] + + NetSliceOptNotif: + type: object + description: Represents a Network Slice Optimization notification. + properties: + subscriptionId: + type: string + description: Identifies the Network slice optimization subscribe event. + sliceInfo: + $ref: 'TS29435_NSCE_NSInfoDelivery.yaml#/components/schemas/NSInfoSet' + optTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' + enforPolId: + type: string + description: Indicates the policy used for slice optimization. + required: + - subscriptionId + - sliceInfo diff --git a/TS29435_NSCE_NetworkSliceAdaptation.yaml b/TS29435_NSCE_NetworkSliceAdaptation.yaml new file mode 100644 index 0000000..c93be84 --- /dev/null +++ b/TS29435_NSCE_NetworkSliceAdaptation.yaml @@ -0,0 +1,236 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Adaptation Service + version: 1.1.0-alpha.4 + description: | + NSCE Server Network Slice Adaptation Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Services; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/ss-nsa/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /request: + post: + summary: Request network slice adaptation. + operationId: RequestNetworkSliceAdaptation + tags: + - Network Slice Adaptation Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NwSliceAdptInfo' + responses: + '204': + description: > + No Content. The network slice adaptation request is successfully received and processed. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + description: > + The request is rejected by the NSCE Server and additional details (along with + ProblemDetails data structure) may be returned. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetailsSliceAdapt' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + AdaptStatusNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AdaptStatusNotif' + responses: + '204': + description: > + No Content. The Network Slice Adaptation Status Notification is successfully + received and processed. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + NwSliceAdptInfo: + description: > + Represents the information associated with requested network slice adaptation + with the underlying network. + type: object + properties: + valServiceId: + type: string + valTgtUeIds: + type: array + items: + type: string + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + netSliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + monNetSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + minItems: 1 + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + reqAdaptThres: + type: array + items: + $ref: '#/components/schemas/AdaptThreshold' + minItems: 1 + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - valServiceId + - valTgtUeIds + not: + required: [snssai, netSliceId] + + AdaptThreshold: + description: > + Represents the network slice adaptation threshold. + type: object + properties: + threshName: + $ref: '#/components/schemas/AdaptThresholdName' + threshValue: + $ref: '#/components/schemas/AdaptThresholdValue' + required: + - threshName + - threshValue + + AdaptStatusNotif: + description: > + Represents a Network Slice Adaptation Status Notification. + type: object + properties: + status: + type: boolean + description: > + Contains the network slice adaptation status. It indicates whether the network slice + adaptation was successful or not. + true means that the network slice adaptation was successful. + false means that the network slice adaptation failed. + failureCause: + $ref: '#/components/schemas/AdaptFailCause' + required: + - status + + +# SIMPLE DATA TYPES +# + + AdaptFailCause: + description: > + Represents the network slice adaptation failure cause. + type: string + + AdaptThresholdName: + description: > + Represents the name of the adaptation threshold. + type: string + + AdaptThresholdValue: + description: > + Represents the value of the adaptation threshold. + type: string + + +# +# ENUMERATIONS +# + +# +# Data types describing alternative data types or combinations of data types +# + + ProblemDetailsSliceAdapt: + description: > + Represents an extension to the ProblemDetails data structure with potentially additional + error information related to network slice adaptation failure. + allOf: + - $ref: 'TS29122_CommonData.yaml#/components/schemas/ProblemDetails' + - $ref: '#/components/schemas/AdaptFailCause' diff --git a/TS29435_NSCE_PerfMonitoring.yaml b/TS29435_NSCE_PerfMonitoring.yaml new file mode 100644 index 0000000..ba0d732 --- /dev/null +++ b/TS29435_NSCE_PerfMonitoring.yaml @@ -0,0 +1,932 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Performance and Analytics Monitoring Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Network Slice Performance and Analytics Monitoring Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-pam/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /jobs: + post: + summary: Request the creation of a Monitoring Job. + operationId: CreateMonJob + tags: + - Monitoring Jobs (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringJob' + responses: + '201': + description: > + Created. The Monitoring Job is successfully created and a representation of the + created Individual Monitoring Job resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringJob' + headers: + Location: + description: > + Contains the URI of the created Individual Monitoring Job resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /jobs/{jobId}: + parameters: + - name: jobId + in: path + description: > + Represents the identifier of the Individual Monitoring Job resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual Monitoring Job resource. + operationId: GetIndMonJob + tags: + - Individual Monitoring Job (Document) + responses: + '200': + description: > + OK. The requested Individual Monitoring Job resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringJob' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the update of an existing Individual Monitoring Job resource. + operationId: UpdateIndMonJob + tags: + - Individual Monitoring Job (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringJob' + responses: + '200': + description: > + OK. The Individual Monitoring Job resource is successfully updated and a representation + of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringJob' + '204': + description: > + No Content. The Individual Monitoring Job resource is successfully updated and no + content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the modification of an existing Individual Monitoring Job resource. + operationId: ModifyIndMonJob + tags: + - Individual Monitoring Job (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/MonitoringJobPatch' + responses: + '200': + description: > + OK. The Individual Monitoring Job resource is successfully modified and a representation + of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringJob' + '204': + description: > + No Content. The Individual Monitoring Job resource is successfully modified and no + content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual Monitoring Job resource. + operationId: DeleteIndMonJob + tags: + - Individual Monitoring Job (Document) + responses: + '204': + description: > + No Content. The Individual Monitoring Job resource is successfully deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /subscriptions: + post: + summary: Request the creation of a Monitoring Subscription. + operationId: CreateMonSubsc + tags: + - Monitoring Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringSubsc' + responses: + '201': + description: > + Created. The Monitoring Subscription is successfully created and a representation of the + created Individual Monitoring Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringSubsc' + headers: + Location: + description: > + Contains the URI of the created Individual Monitoring Subscription resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + MonitoringNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringNotif' + responses: + '204': + description: > + No Content. The Monitoring Notification is successfully received and + acknowledged. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /subscriptions/{subscId}: + parameters: + - name: subscId + in: path + description: > + Represents the identifier of the Individual Monitoring Subscription resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual Monitoring Subscription resource. + operationId: GetIndMonSubsc + tags: + - Individual Monitoring Subscription (Document) + responses: + '200': + description: > + OK. The requested Individual Monitoring Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringSubsc' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the update of an existing Individual Monitoring Subscription resource. + operationId: UpdateIndMonSubsc + tags: + - Individual Monitoring Subscription (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringSubsc' + responses: + '200': + description: > + OK. The Individual Monitoring Subscription resource is successfully updated and a + representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringSubsc' + '204': + description: > + No Content. The Individual Monitoring Subscription resource is successfully updated + and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the modification of an existing Individual Monitoring Subscription resource. + operationId: ModifyIndMonSubsc + tags: + - Individual Monitoring Subscription (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/MonitoringSubscPatch' + responses: + '200': + description: > + OK. The Individual Monitoring Subscription resource is successfully modified and a + representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringSubsc' + '204': + description: > + No Content. The Individual Monitoring Subscription resource is successfully modified + and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual Monitoring Subscription resource. + operationId: DeleteIndMonSubsc + tags: + - Individual Monitoring Subscription (Document) + responses: + '204': + description: > + No Content. The Individual Monitoring Subscription resource is successfully deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /request: + post: + summary: Enables to request a multiple slices related performance and analytics consolidated reporting. + operationId: MultiSlicesMonRepReq + tags: + - Multiple Slices related Performance and Analytics Consolidated Reporting Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringReq' + responses: + '200': + description: > + OK. The requested multiple slices related performance and analytics consolidated report + shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/MonitoringResp' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + MonitoringJob: + description: > + Represents a Monitoring Job. + type: object + properties: + monMetrics: + type: object + additionalProperties: + $ref: '#/components/schemas/MonitoringMetric' + minProperties: 1 + description: > + Contains the requested performance and analytics monitoring metric(s). + The key of the map shall be any unique string encoded value. + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - monMetrics + + MonitoringJobPatch: + description: > + Represents the requested modifications to a Monitoring Job. + type: object + properties: + monMetrics: + type: object + additionalProperties: + $ref: '#/components/schemas/MonitoringMetric' + minProperties: 1 + description: > + Contains the updated requested performance and analytics monitoring metric(s). + The key of the map shall be any unique string encoded value and shall be set to the same + value as the one provided during the creation of the corresponding Monitoring Job. + + MonitoringMetric: + description: > + Represents the parameters of a network slice related performance and analytics monitoring + metric. + type: object + properties: + valServId: + type: string + netSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + minItems: 1 + perfAnalyList: + type: array + items: + $ref: '#/components/schemas/MonPerfAnalytics' + minItems: 1 + startTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + endTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + required: + - perfAnalyList + - startTime + anyOf: + - required: [valServId] + - required: [netSliceIds] + + MonPerfAnalytics: + description: > + Represents a monitored performance or analytics information. + metric. + type: object + properties: + monNetSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + minItems: 1 + metricName: + $ref: '#/components/schemas/MonPerfMetric' + metricCustName: + type: string + required: + - metricName + + MonitoringSubsc: + description: > + Represents a Monitoring Subscription. + type: object + properties: + reqReportingList: + type: object + additionalProperties: + $ref: '#/components/schemas/ReportingInfo' + minProperties: 1 + description: > + Contains the requested performance and analytics reporting information. + The key of the map shall be any unique string encoded value. + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - reqReportingList + - notifUri + + MonitoringSubscPatch: + description: > + Represents the requested modifications to a Monitoring Subscription. + type: object + properties: + monMetrics: + type: object + additionalProperties: + $ref: '#/components/schemas/ReportingInfo' + minProperties: 1 + description: > + Contains the updated requested performance and analytics reporting information. + The key of the map shall be any unique string encoded value and shall be set to the same + value as the one provided during the creation of the corresponding Monitoring + Subscription. + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + + ReportingInfo: + description: > + Represents the network slice related performance and analytics monitoring reporting + information. + type: object + properties: + valServId: + type: string + netSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + minItems: 1 + perfAnalyList: + type: array + items: + $ref: '#/components/schemas/MonPerfAnalytics' + minItems: 1 + startTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + endTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + repPeriodicity: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + required: + - perfAnalyList + - startTime + - endTime + anyOf: + - required: [valServId] + - required: [netSliceIds] + + MonitoringNotif: + description: > + Represents a Monitoring Notification. + type: object + properties: + subscId: + type: string + reports: + type: array + items: + $ref: '#/components/schemas/ReportingData' + minItems: 1 + required: + - subscId + - reports + + ReportingData: + description: > + Represents a network slice related performance and analytics monitoring report. + type: object + properties: + valServId: + type: string + netSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + minItems: 1 + perfResults: + type: array + items: + $ref: '#/components/schemas/MonPerfAnalyRes' + minItems: 1 + required: + - perfResults + anyOf: + - required: [valServId] + - required: [netSliceIds] + + MonPerfAnalyRes: + description: > + Represents a monitored performance or analytics result. + metric. + type: object + properties: + monNetSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + minItems: 1 + metricName: + $ref: '#/components/schemas/MonPerfMetric' + metricCustName: + type: string + metricValue: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Bytes' + required: + - metricName + - metricValue + + MonitoringReq: + description: > + Represents a multiple slices related performance and analytics consolidated reporting + request. + type: object + properties: + monMetrics: + type: array + items: + $ref: '#/components/schemas/MonReqMetrics' + minItems: 1 + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - monMetrics + + MonitoringResp: + description: > + Represents a multiple slices related performance and analytics consolidated reporting + response. + type: object + properties: + perfResults: + type: array + items: + $ref: '#/components/schemas/MonRespRepData' + minItems: 1 + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - perfResults + + MonReqMetrics: + description: > + Represents the parameters of a network slice related performance and analytics monitoring + metric used within a multiple slices related performance and analytics consolidated + reporting request. + type: object + properties: + valServId: + type: string + netSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + minItems: 1 + perfAnalyList: + type: array + items: + $ref: '#/components/schemas/MonPerfAnalytics' + minItems: 1 + startTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + endTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + required: + - perfAnalyList + - startTime + - endTime + anyOf: + - required: [valServId] + - required: [netSliceIds] + + MonRespRepData: + description: > + Represents a network slice related performance and analytics monitoring report instance + provided as part of a multiple slices related performance and analytics consolidated + reporting response. + type: object + properties: + valServId: + type: string + netSliceIds: + type: array + items: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + minItems: 1 + perfResults: + type: array + items: + $ref: '#/components/schemas/MonPerfAnalyRes' + minItems: 1 + startTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + endTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + required: + - perfResults + - startTime + - endTime + anyOf: + - required: [valServId] + - required: [netSliceIds] + + +# SIMPLE DATA TYPES +# + +# +# ENUMERATIONS +# + + MonPerfMetric: + anyOf: + - type: string + enum: + - RTT + - E2E_LATENCY + - PACKET_LOSS + - RETRANSMISSIONS + - THROUGHPUT + - NUM_OF_REG_UES + - NUM_OF_EST_PDU_SESS + - RESOURCE_USAGE + - LOAD_LEVEL + - OTHER + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents a performance or analytics metric. + Possible values are: + - RTT: Indicates that the performance or analytics metric is the round-trip time within the + network slice. + - E2E_LATENCY: Indicates that the performance or analytics metric is the E2E Latency within + the network slice. + - PACKET_LOSS: Indicates that the performance or analytics metric is the packet loss within + the network slice. + - RETRANSMISSIONS: Indicates that the performance or analytics metric is the retransmissions + within the network slice. + - THROUGHPUT: Indicates that the performance or analytics metric is the throughput within + the network slice. + - NUM_OF_REG_UES: Indicates that the performance or analytics metric is the number of + registered UEs within the network slice. + - NUM_OF_EST_PDU_SESS: Indicates that the performance or analytics metric is the number of + established PDU Sessions within the network slice. + - RESOURCE_USAGE: Indicates that the performance or analytics metric is the resources usage + within the network slice. + - LOAD_LEVEL: Indicates that the performance or analytics metric is the load level within + the network slice. + - OTHER: Indicates that the performance or analytics metric is a custom metric. diff --git a/TS29435_NSCE_PolicyManagement.yaml b/TS29435_NSCE_PolicyManagement.yaml index de61821..322a6d6 100644 --- a/TS29435_NSCE_PolicyManagement.yaml +++ b/TS29435_NSCE_PolicyManagement.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: NSCE Server Policy Management Service - version: 1.0.0-alpha.1 + version: 1.0.0-alpha.3 description: | NSCE Server Policy Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.435 V0.1.0; Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ @@ -26,31 +26,31 @@ security: - oAuth2ClientCredentials: [] paths: - /provisionings: + /policies: post: - summary: Request the creation of a Policy Provisioning. - operationId: CreatePolProv + summary: Request the provisioning of a Policy. + operationId: CreatePolicy tags: - - Policy Provisionings (Collection) + - Policies (Collection) requestBody: required: true content: application/json: schema: - $ref: '#/components/schemas/PolicyProv' + $ref: '#/components/schemas/Policy' responses: '201': description: > - Created. The Policy Provisioning is successfully created and a representation of the - created Individual Policy Provisioning resource shall be returned. + Created. The Policy is successfully created and a representation of the created + Individual Policy resource shall be returned. content: application/json: schema: - $ref: '#/components/schemas/PolicyProv' + $ref: '#/components/schemas/Policy' headers: Location: description: > - Contains the URI of the created Individual Policy Provisioning resource. + Contains the URI of the created Individual Policy resource. required: true schema: type: string @@ -76,30 +76,82 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + HarmonizationNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/HarmonizationNotif' + responses: + '200': + description: > + OK. The Policy Harmonization Notification is successfully received and + processed, and policy harmonization related information shall be returned in the + response body. + content: + application/json: + schema: + $ref: '#/components/schemas/HarmonizationResp' + '204': + description: > + No Content. The Policy Harmonization Notification is successfully received and + processed, and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' - /provisionings/{provId}: - parameters: - - name: provId - in: path - description: > - Represents the identifier of the Individual Policy Provisioning resource. - required: true - schema: - type: string - - get: - summary: Retrieve an existing Individual Policy Provisioning resource. - operationId: GetIndPolProv + /policies/delete: + post: + summary: Enables to request the deletion of one or several existing Policy(ies). + operationId: DeletePolicies tags: - - Individual Policy Provisioning (Document) + - Policy(ies) Deletion Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/PolDeleteReq' responses: '200': description: > - OK. The requested Individual Policy Provisioning resource shall be returned. + OK. The Policy(ies) deletion request is successfully received and processed, and + deletion related information shall be returned in the response body. content: application/json: schema: - $ref: '#/components/schemas/PolicyProv' + $ref: '#/components/schemas/PolDeleteResp' + '204': + description: > + No Content. The Policy(ies) deletion request is successfully received and processed, and + no content is returned in the response body. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -112,8 +164,12 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' - '406': - $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': @@ -123,30 +179,29 @@ paths: default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' - put: - summary: Request the update of an existing Individual Policy Provisioning resource. - operationId: UpdateIndDPolProv - tags: - - Individual Policy Provisioning (Document) - requestBody: + /policies/{policyId}: + parameters: + - name: policyId + in: path + description: > + Represents the identifier of the Individual Policy resource. required: true - content: - application/json: - schema: - $ref: '#/components/schemas/PolicyProv' + schema: + type: string + + get: + summary: Retrieve an existing Individual Policy resource. + operationId: GetIndPolicy + tags: + - Individual Policy (Document) responses: '200': description: > - OK. The Individual Policy Provisioning resource is successfully updated and a - representation of the updated resource shall be returned in the response body. + OK. The requested Individual Policy resource shall be returned. content: application/json: schema: - $ref: '#/components/schemas/PolicyProv' - '204': - description: > - No Content. The Individual Policy Provisioning resource is successfully updated and no - content is returned in the response body. + $ref: '#/components/schemas/Policy' '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -170,29 +225,29 @@ paths: default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' - patch: - summary: Request the modification of an existing Individual Policy Provisioning resource. - operationId: ModifyIndPolProv + put: + summary: Request the update of an existing Individual Policy resource. + operationId: UpdateIndDPolicy tags: - - Individual Policy Provisioning (Document) + - Individual Policy (Document) requestBody: required: true content: - application/merge-patch+json: + application/json: schema: - $ref: '#/components/schemas/PolicyProvPatch' + $ref: '#/components/schemas/Policy' responses: '200': description: > - OK. The Individual Policy Provisioning resource is successfully modified and a - representation of the updated resource shall be returned in the response body. + OK. The Individual Policy resource is successfully updated and a representation + of the updated resource shall be returned in the response body. content: application/json: schema: - $ref: '#/components/schemas/PolicyProv' + $ref: '#/components/schemas/Policy' '204': description: > - No Content. The Individual Policy Provisioning resource is successfully modified and no + No Content. The Individual Policy resource is successfully updated and no content is returned in the response body. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' @@ -217,15 +272,30 @@ paths: default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' - delete: - summary: Request the deletion of an existing Individual Policy Provisioning resource. - operationId: DeleteIndPolProv + patch: + summary: Request the modification of an existing Individual Policy resource. + operationId: ModifyIndPolicy tags: - - Individual Policy Provisioning (Document) + - Individual Policy (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/PolicyPatch' responses: + '200': + description: > + OK. The Individual Policy resource is successfully modified and a representation + of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/Policy' '204': description: > - No Content. The Individual Policy Provisioning resource is successfully deleted. + No Content. The Individual Policy resource is successfully modified and no + content is returned in the response body. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -313,7 +383,7 @@ paths: '204': description: > No Content. The Policy Usage Notification is successfully received and - Acknowledged. + acknowledged. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -347,7 +417,6 @@ paths: in: path description: > Represents the identifier of the Individual Policy Usage Subscription resource. - resource. required: true schema: type: string @@ -530,15 +599,15 @@ components: # STRUCTURED DATA TYPES # - PolicyProv: + Policy: description: > - Represents a Policy Provisioning. + Represents a Policy. type: object properties: netSliceId: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + $ref: '#/components/schemas/NetSliceId' reqDnn: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' polHarmInd: type: boolean default: false @@ -547,34 +616,51 @@ components: is requested or not. true means that policy harmonization is requested. false means that policy harmonization is not requested. - The default value when omitted is "false". + The default value when omitted is false. + policy: + $ref: '#/components/schemas/PolicyData' defaultPolInd: type: boolean default: false description: > Contains the default policy indication. It indicates whether or not the provisioned policy shall be used as a default policy for the network slices provisioned without any - policy. + policy for the policy type it belongs to. true means that the provisioned policy shall be used as a default policy for the network - slices provisioned without any policy. + slices provisioned without any policy for the policy type. false means that the provisioned policy shall not be used as a default policy for the - network slices provisioned without any policy. - The default value when omitted is "false". + network slices provisioned without any policy for the policy type. + The default value when omitted is false. + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + harmonizationId: + type: string suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - policy - PolicyProvPatch: + PolicyPatch: description: > - Represents the requested modifications to a Policy Provisioning. + Represents the requested modifications to a Policy. type: object properties: netSliceId: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + $ref: '#/components/schemas/NetSliceId' reqDnn: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + polHarmInd: + type: boolean + description: > + Contains the policy harmonization indication. It indicates whether policy harmonization + is requested or not. + true means that policy harmonization is requested. + false means that policy harmonization is not requested. + The default value when omitted and not previously provisioned is false. + policy: + $ref: '#/components/schemas/PolicyData' defaultPolInd: type: boolean - default: false description: > Contains the default policy indication. It indicates whether or not the provisioned policy shall be used as a default policy for the network slices provisioned without any @@ -583,7 +669,39 @@ components: slices provisioned without any policy. false means that the provisioned policy shall not be used as a default policy for the network slices provisioned without any policy. - The default value when omitted is "false". + The default value when omitted and not previously provisioned is false. + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + + PolicyData: + description: > + Represents the content of a policy. + type: object + properties: + policyType: + $ref: '#/components/schemas/PolicyType' + areaOfInterest: + $ref: 'TS29435_NSCE_NSInfoDelivery.yaml#/components/schemas/ServArea' + triggers: + $ref: '#/components/schemas/PolicyTriggers' + actions: + $ref: '#/components/schemas/PolicyActions' + lifetime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + maxNumTimes: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + priority: + $ref: '#/components/schemas/PriorityLevel' + schedule: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + preemption: + $ref: '#/components/schemas/PriorityLevel' + required: + - policyType + - areaOfInterest + oneOf: + - required: [lifetime] + - required: [maxNumTimes] PolUsageSubsc: description: > @@ -593,7 +711,7 @@ components: notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' netSliceId: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + $ref: '#/components/schemas/NetSliceId' reqPolicyRep: $ref: '#/components/schemas/ReqPolRep' repPeriodicity: @@ -651,7 +769,7 @@ components: PolRepData: description: > - Represents data access statistics. + Represents policy usage reporting data. type: object properties: policyId: @@ -663,16 +781,233 @@ components: preEmptCount: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' preEmptPolId: - type: string + type: array + items: + type: string + minItems: 1 required: - policyId - count - timeSpent + PolDeleteReq: + description: > + Represents the parameters to request the deletion of one or several Policy(ies). + type: object + properties: + policyIds: + type: array + items: + type: string + minItems: 1 + defPolicyIds: + type: object + additionalProperties: + type: string + minProperties: 1 + description: > + Contains the identifier(s) of the policy(ies) that are to be the new default + Policy(ies). Each map entry corresponds to the new default policy for a particular + policy type. There shall not be more than one default policy for the same policy type. + The key of the map shall be the policy type (encoded using the PolicyType enumeration + data type defined in clause 6.3.6.3.3) for which the provided new default policy + identified by the corresponding map value is related. + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - policyIds + + PolDeleteResp: + description: > + Represents the response to the Policy(ies) deletion request. + type: object + properties: + defPoliciesInfo: + type: object + additionalProperties: + $ref: '#/components/schemas/DefaultPolInfo' + minProperties: 1 + description: > + Contains the new default policy(ies) related information. Each map entry corresponds to + the information of the new default policy for a particular policy type. + The key of the map shall be set to the value of the policyType attribute of the + corresponding map entry encoded using the DefaultPolInfo data type. + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - defPoliciesInfo + + DefaultPolInfo: + description: > + Represents the default policy related information. + type: object + properties: + policyType: + $ref: '#/components/schemas/PolicyType' + defPolicyId: + type: string + priority: + $ref: '#/components/schemas/PriorityLevel' + required: + - policyType + - defPolicyId + + HarmonizationNotif: + description: > + Represents a Policy Harmonization Notification. + type: object + properties: + harmonizationId: + type: string + policy: + $ref: '#/components/schemas/PolicyData' + required: + - harmonizationId + - policy + + HarmonizationResp: + description: > + Represents the response to a Policy Harmonization Notification. + type: object + properties: + feedback: + type: boolean + description: > + Contains the policy harmonization feedback. It indicates whether the policy + harmonization result is accepted or not. + true means that the policy harmonization result is accepted. + false means that the policy harmonization result is not accepted. + required: + - feedback + + NetSliceId: + description: > + Represents the network slice identification information. + type: object + properties: + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + nsiId: + $ref: 'TS29531_Nnssf_NSSelection.yaml#/components/schemas/NsiId' + ensi: + $ref: '#/components/schemas/Ensi' + oneOf: + - required: [snssai] + - required: [nsiId] + - required: [ensi] + + PolicyTriggers: + description: > + Represents the policy related triggers. + type: object + properties: + monPercentage: + type: integer + minimum: 0 + maximum: 100 + monValue: + type: integer + minimum: 1 + description: Contains an unsigned Integer with only the values 1 and above permitted. + monParamsValues: + type: string + timePeriod: + $ref: '#/components/schemas/TimePeriodInfo' + + PolicyActions: + description: > + Represents the policy related actions. + type: object + properties: + stepIncreasePerc: + type: integer + minimum: 0 + maximum: 100 + allowedQoSActions: + type: array + items: + $ref: '#/components/schemas/QoSAction' + minItems: 1 + + TimePeriodInfo: + description: > + Represents the time period related information. + type: object + properties: + startTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + endTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + daysOfWeek: + type: array + items: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DayOfWeek' + minItems: 1 + maxItems: 7 + anyOf: + - required: [startTime] + - required: [endTime] + - required: [daysOfWeek] + # SIMPLE DATA TYPES # + PriorityLevel: + description: > + Represents an unsigned integer, within the range 1 to 255, indicating the priority level of + a policy or the pre-emption capability of a policy. + type: integer + minimum: 1 + maximum: 255 + + Ensi: + description: > + Represents the External Network Slice Information that is used to identify a network slice, + as specified in 3GPP TS 33.501. + type: string + + # # ENUMERATIONS # + + PolicyType: + anyOf: + - type: string + enum: + - MAX_NUM_PDU_SESS + - MAX_NUM_UE + - SLICE_LOAD_PREDICTION + - TIME_PERIOD_AND_AVG_QOS + - TIME_PERIOD_AND_MIN_QOS + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents policy type. + Possible values are: + - MAX_NUM_PDU_SESS: Indicates that the policy type is the maximum number of PDU Sessions. + - MAX_NUM_UE: Indicates that the policy type is the maximum number of UEs Sessions. + - SLICE_LOAD_PREDICTION: Indicates that the policy type is the network slice load + prediction. + - TIME_PERIOD_AND_AVG_QOS: Indicates that the policy type is the time period and average QoS + per UE. + - TIME_PERIOD_AND_MIN_QOS: Indicates that the policy type is the time period and minimum QoS + per UE. + + QoSAction: + anyOf: + - type: string + enum: + - MODIFY + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents the QoS related action. + Possible values are: + - MODIFY: Indicates that the QoS related action is to trigger the modification of the + network slice capacity to fulfil the requested needs (e.g., average QoS, minimum QoS). diff --git a/TS29435_NSCE_SliceCommService.yaml b/TS29435_NSCE_SliceCommService.yaml new file mode 100644 index 0000000..5f2b7a1 --- /dev/null +++ b/TS29435_NSCE_SliceCommService.yaml @@ -0,0 +1,346 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Communication Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Network Slice Communication Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-scs/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /services: + post: + summary: Request the creation of a Slice Related Communication Service. + operationId: CreateSliceCommServ + tags: + - Slice Related Communication Services (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SliceCommService' + responses: + '201': + description: > + Created. The Slice Related Communication Service is successfully created and a + representation of the created Individual Slice Related Communication Service resource + shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceCommService' + headers: + Location: + description: > + Contains the URI of the created Individual Slice Related Communication Service + resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /services/{servId}: + parameters: + - name: servId + in: path + description: > + Represents the identifier of the Individual Slice Related Communication Service resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual Slice Related Communication Service resource. + operationId: GetIndSliceCommServ + tags: + - Individual Slice Related Communication Service (Document) + responses: + '200': + description: > + OK. The requested Individual Slice Related Communication Service resource shall be + returned. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceCommService' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the update of an existing Individual Slice Related Communication Service resource. + operationId: UpdateIndSliceCommServ + tags: + - Individual Slice Related Communication Service (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SliceCommService' + responses: + '200': + description: > + OK. The Individual Slice Related Communication Service resource is successfully updated + and a representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceCommService' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the modification of an existing Individual Slice Related Communication Service resource. + operationId: ModifyIndSliceCommServ + tags: + - Individual Slice Related Communication Service (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/SliceCommServicePatch' + responses: + '200': + description: > + OK. The Individual Slice Related Communication Service resource is successfully modified + and a representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceCommService' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual Slice Related Communication Service resource. + operationId: DeleteIndSliceCommServ + tags: + - Individual Slice Related Communication Service (Document) + responses: + '204': + description: > + No Content. The Individual Slice Related Communication Service resource is successfully + deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + SliceCommService: + description: > + Represents a Slice Related Communication Service. + type: object + properties: + valServName: + type: string + valServId: + type: string + areaOfInterest: + $ref: 'TS29435_NSCE_NSInfoDelivery.yaml#/components/schemas/ServArea' + servProfile: + type: object + additionalProperties: + $ref: '#/components/schemas/ServReq' + minProperties: 1 + description: > + Represents the requested VAL service profile containing the application requirements of + the VAL service to be supported. + The key of the map shall be any unique string encoded value. + sliceInfo: + $ref: '#/components/schemas/NetSliceInfo' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - valServName + - valServId + - areaOfInterest + - servProfile + + SliceCommServicePatch: + description: > + Represents the requested modifications to a Slice Related Communication Service. + type: object + properties: + areaOfInterest: + $ref: 'TS29435_NSCE_NSInfoDelivery.yaml#/components/schemas/ServArea' + servProfile: + type: object + additionalProperties: + $ref: '#/components/schemas/ServReq' + minProperties: 1 + nullable: true + description: > + Represents the updated requested VAL service profile containing the application + requirements of the VAL service to be supported. + The key of the map shall be any unique string encoded value and shall be set to the same + value as the one provided during the creation of the corresponding Slice Related + Communication Service. + + ServReq: + description: > + Represents a set of application service requirements. + type: object + properties: + reqName: + type: string + reqValue: + type: string + required: + - reqName + - reqValue + + NetSliceInfo: + description: > + Represents network slice related information. + type: object + properties: + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + attributes: + $ref: 'TS28541_SliceNrm.yaml#/components/schemas/ServiceProfile' + anyOf: + - required: [snssai] + - required: [attributes] + + +# SIMPLE DATA TYPES +# + +# +# ENUMERATIONS +# diff --git a/TS29435_NSCE_SliceReqVerifyAndAlign.yaml b/TS29435_NSCE_SliceReqVerifyAndAlign.yaml new file mode 100644 index 0000000..f6758e2 --- /dev/null +++ b/TS29435_NSCE_SliceReqVerifyAndAlign.yaml @@ -0,0 +1,410 @@ +openapi: 3.0.0 + +info: + title: NSCE Server Network Slice Requirements Verification and Alignment Service + version: 1.0.0-alpha.3 + description: | + NSCE Server Network Slice Requirements Verification and Alignment Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.435 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + Network Slice Capability Exposure (NSCE) Server Service(s); Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.435/ + +servers: + - url: '{apiRoot}/nsce-srva/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549. + +security: + - {} + - oAuth2ClientCredentials: [] + +paths: + /subscriptions: + post: + summary: Request the creation of a Network Slice Requirements Verification and Alignment Subscription. + operationId: CreateSliceReqVerAlignSubsc + tags: + - Network Slice Requirements Verification and Alignment Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SliceReqVerAlignSubsc' + responses: + '201': + description: > + Created. The Network Slice Requirements Verification and Alignment Subscription + is successfully created and a representation of the created Individual Network + Slice Requirements Verification and Alignment Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceReqVerAlignSubsc' + headers: + Location: + description: > + Contains the URI of the created Individual Network Slice Requirements Verification + and Alignment Subscription resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + SliceReqVerAlignNotif: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SliceReqVerAlignNotif' + responses: + '204': + description: > + No Content. The Network Slice Requirements Verification and Alignment + Notification is successfully received and acknowledged. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /subscriptions/{subscriptionId}: + parameters: + - name: subscriptionId + in: path + description: > + Represents the identifier of the Individual Network Slice Requirements Verification + and Alignment Subscription resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual Network Slice Requirements Verification and Alignment Subscription resource. + operationId: GetIndSliceReqVerAlignSubsc + tags: + - Individual Network Slice Requirements Verification and Alignment Subscription (Document) + responses: + '200': + description: > + OK. The requested Individual Network Slice Requirements Verification and Alignment + Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceReqVerAlignSubsc' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the update of an existing Individual Network Slice Requirements Verification and Alignment Subscription resource. + operationId: UpdateIndSliceReqVerAlignSubsc + tags: + - Individual Network Slice Requirements Verification and Alignment Subscription (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SliceReqVerAlignSubsc' + responses: + '200': + description: > + OK. The Individual Network Slice Requirements Verification and Alignment Subscription + resource is successfully updated and a representation of the updated resource shall + be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceReqVerAlignSubsc' + '204': + description: > + No Content. The Individual Network Slice Requirements Verification and Alignment + Subscription resource is successfully updated and no content is returned in the + response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the modification of an existing Individual Network Slice Requirements Verification and Alignment Subscription resource. + operationId: ModifyIndSliceReqVerAlignSubsc + tags: + - Individual Network Slice Requirements Verification and Alignment Subscription (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/SliceReqVerAlignSubscPatch' + responses: + '200': + description: > + OK. The Individual Network Slice Requirements Verification and Alignment Subscription + resource is successfully modified and a representation of the updated resource shall + be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceReqVerAlignSubsc' + '204': + description: > + No Content. The Individual Network Slice Requirements Verification and Alignment + Subscription resource is successfully modified and no content is returned in the + response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual Network Slice Requirements Verification and Alignment Subscription resource. + operationId: DeleteIndSliceReqVerAlignSubsc + tags: + - Individual Network Slice Requirements Verification and Alignment Subscription (Document) + responses: + '204': + description: > + No Content. The Individual Network Slice Requirements Verification and Alignment + Subscription resource is successfully deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + +# +# STRUCTURED DATA TYPES +# + + SliceReqVerAlignSubsc: + type: object + description: > + Represents a Network Slice Requirements Verification and Alignment subscription. + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + valServId: + type: string + description: > + Contains the identifier of the VAL Service to which the requirement request is related. + valUeIds: + type: array + items: + type: string + description: > + Contains the list of the identifier(s) of the VAL UE(s) to which the subscription + is related. + minItems: 1 + sliceReq: + type: array + items: + $ref: 'TS28541_SliceNrm.yaml#/components/schemas/ServiceProfile' + description: > + Contains the list of the slice requirements which need to be verified and aligned. + minItems: 1 + netSliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - notifUri + - valServId + - sliceReq + - netSliceId + + SliceReqVerAlignSubscPatch: + type: object + description: > + Represents the requested modifications to a Network Slice Requirements Verification + and Alignment subscription. + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + valUeIds: + type: array + items: + type: string + description: > + Contains the updated list of the identifier(s) of the VAL UE(s) to which the + subscription is related. + minItems: 1 + sliceReq: + type: array + items: + $ref: 'TS28541_SliceNrm.yaml#/components/schemas/ServiceProfile' + minItems: 1 + description: > + Contains the updated list of the slice requirements which need to be verified and + aligned. + netSliceId: + $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId' + + SliceReqVerAlignNotif: + type: object + description: > + Represents a Network Slice Requirements Verification and Alignment notification. + properties: + subscriptionId: + type: string + description: > + Contains the identifier of the subscription to which the Network Slice Requirements + Verification and Alignment Notification is related. + sliceReqInfo: + type: array + items: + $ref: 'TS28541_SliceNrm.yaml#/components/schemas/ServiceProfile' + minItems: 1 + description: > + Contains the information of the updated slice requirements (i.e., parameters and + characteristics). + required: + - subscriptionId + - sliceReqInfo + + +# +# ENUMERATIONS +# + +# +# ENUMERATIONS +# diff --git a/TS29486_VAE_FileDistribution.yaml b/TS29486_VAE_FileDistribution.yaml index d237e2b..864c920 100644 --- a/TS29486_VAE_FileDistribution.yaml +++ b/TS29486_VAE_FileDistribution.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.2.0-alpha.1 + version: 1.2.0-alpha.2 title: VAE_FileDistribution description: | API for VAE File Distribution Service - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.486 V18.0.0 V2X Application Enabler (VAE) Services + description: 3GPP TS 29.486 V18.2.0 V2X Application Enabler (VAE) Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.486/' security: @@ -178,6 +178,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' maxDelay: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + duration: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' localMbmsInfo: $ref: '#/components/schemas/LocalMbmsInfo' localMbmsActInd: diff --git a/TS29486_VAE_MessageDelivery.yaml b/TS29486_VAE_MessageDelivery.yaml index 34178a0..18ac867 100644 --- a/TS29486_VAE_MessageDelivery.yaml +++ b/TS29486_VAE_MessageDelivery.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.2.0-alpha.2 + version: 1.2.0-alpha.3 title: VAE_MessageDelivery description: | API for VAE Message Delivery Service - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.486 V18.1.0 V2X Application Enabler (VAE) Services + description: 3GPP TS 29.486 V18.2.0 V2X Application Enabler (VAE) Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.486/' security: @@ -394,6 +394,8 @@ components: $ref: '#/components/schemas/V2xUeId' groupId: $ref: '#/components/schemas/V2xGroupId' + serviceId: + $ref: '#/components/schemas/V2xServiceId' duration: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' geoId: @@ -438,6 +440,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' ueId: $ref: '#/components/schemas/V2xUeId' + serviceId: + $ref: '#/components/schemas/V2xServiceId' geoId: $ref: '#/components/schemas/GeoId' payload: diff --git a/TS29486_VAE_ServiceAndQoSControlInfo.yaml b/TS29486_VAE_ServiceAndQoSControlInfo.yaml index d3a08c6..de733eb 100644 --- a/TS29486_VAE_ServiceAndQoSControlInfo.yaml +++ b/TS29486_VAE_ServiceAndQoSControlInfo.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: VAE Server Service And QoS Control Info Service - version: 1.0.0-alpha.1 + version: 1.0.0-alpha.2 description: | VAE Server Service And QoS Control Info Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.486 V18.1.0 V2X Application Enabler (VAE) Services + description: 3GPP TS 29.486 V18.2.0 V2X Application Enabler (VAE) Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.486/' servers: @@ -78,7 +78,7 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/default' callbacks: ServReqQoSAdaptNotif: - '{$request.body#/notifUri}': + '{$request.body#/notifUri}/req-qos-adapt': post: requestBody: required: true @@ -90,7 +90,7 @@ paths: '200': description: > OK. The Service Requirements And QoS Adaptation notification is successfully - received and acknowledged and the acknowledgment related information shall be + received and acknowledged, and the acknowledgment related information shall be returned in the response body. content: application/json: @@ -99,7 +99,7 @@ paths: '204': description: > No Content. The Service Requirements And QoS Adaptation notification is - successfully received and acknowledged and no content is returned in the + successfully received and acknowledged, and no content is returned in the response body. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' @@ -128,6 +128,47 @@ paths: default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + QoSChangeNotif: + '{$request.body#/notifUri}/qos-change': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/QoSChangeNotif' + responses: + '204': + description: > + No Content. The QoS Change notification is successfully received and + acknowledged, and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + /subscriptions/{subscriptionId}: parameters: - name: subscriptionId @@ -348,16 +389,14 @@ components: properties: subscriptionId: type: string - ueIdsList: + adaptReports: type: array items: - $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xUeId' + $ref: '#/components/schemas/AdaptReport' minItems: 1 - qosChangeInfo: - $ref: '#/components/schemas/QoSChangeInfo' required: - subscriptionId - - qosChangeInfo + - adaptReports AdaptNotifResp: description: > @@ -367,13 +406,45 @@ components: properties: result: $ref: '#/components/schemas/AckResult' + adaptFeedbacks: + type: array + items: + $ref: '#/components/schemas/AdaptFeedback' + minItems: 1 + required: + - result + + AdaptReport: + description: > + Represents a Service Requirements And QoS Adaptation report. + type: object + properties: + ueIdsList: + type: array + items: + $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xUeId' + minItems: 1 + serviceId: + $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xServiceId' + qosChangeInfo: + $ref: '#/components/schemas/QoSChangeInfo' + required: + - qosChangeInfo + + AdaptFeedback: + description: > + Represents the feedback to a Service Requirements And QoS Adaptation report. + type: object + properties: ueIdsList: type: array items: $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xUeId' minItems: 1 + serviceId: + $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xServiceId' required: - - result + - ueIdsList QoSChangeInfo: description: > @@ -381,7 +452,40 @@ components: type: object properties: loa: + $ref: '#/components/schemas/LoA' + anyOf: + - required: [loa] + + QoSChangeNotif: + description: > + Represents a QoS Change Notification. + type: object + properties: + subscriptionId: type: string + reports: + type: array + items: + $ref: '#/components/schemas/QoSChangeReport' + minItems: 1 + required: + - subscriptionId + + QoSChangeReport: + description: > + Represents a QoS Change report. + type: object + properties: + ueIdsList: + type: array + items: + $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xUeId' + minItems: 1 + serviceId: + $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xServiceId' + anyOf: + - required: [ueIdsList] + - required: [serviceId] V2xTarget: description: > @@ -417,7 +521,31 @@ components: This string provides forward-compatibility with future extensions to the enumeration and is not used to encode content defined in the present version of this API. description: | - Represents the reporting granularity. + Represents the acknowledgement result. Possible values are: - POSITIVE: Indicates that the acknowledgement is positive. - NEGATIVE: Indicates that the acknowledgement is negative. + + LoA: + anyOf: + - type: string + enum: + - 0_NO_AUTOMATION + - 1_DRIVER_ASSISTANCE + - 2_PARTIAL_AUTOMATION + - 3_CONDITIONAL_AUTOMATION + - 4_HIGH_AUTOMATION + - 5_FULL_AUTOMATION + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents the Level of Automation (LoA). + Possible values are: + - 0_NO_AUTOMATION: Indicates that the LoA is 0, i.e., No Automation. + - 1_DRIVER_ASSISTANCE: Indicates that the LoA is 1, i.e., Driver Assistance. + - 2_PARTIAL_AUTOMATION: Indicates that the LoA is 2, i.e., Partial Automation. + - 3_CONDITIONAL_AUTOMATION: Indicates that the LoA is 3, i.e., Conditional Automation. + - 4_HIGH_AUTOMATION: Indicates that the LoA is 4, i.e., High Automation. + - 5_FULL_AUTOMATION: Indicates that the LoA is 5, i.e., Full Automation. diff --git a/TS29486_VAE_SessionOrientedService.yaml b/TS29486_VAE_SessionOrientedService.yaml index 928a0a6..3b3dc45 100644 --- a/TS29486_VAE_SessionOrientedService.yaml +++ b/TS29486_VAE_SessionOrientedService.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.1.0-alpha.2 + version: 1.1.0-alpha.3 title: VAE_SessionOrientedService description: | API for VAE_SessionOrientedService - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.486 V18.1.0 V2X Application Enabler (VAE) Services + description: 3GPP TS 29.486 V18.2.0 V2X Application Enabler (VAE) Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.486/' security: @@ -314,6 +314,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/AverWindow' maxDataBurstVol: $ref: 'TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVol' + not: + required: [pqi, resourceType, packetDelayBudget, packetErrorRate] # Simple data types and Enumerations Action: diff --git a/TS29486_VAE_V2PApplicationRequirement.yaml b/TS29486_VAE_V2PApplicationRequirement.yaml index 7aac57f..40d2840 100644 --- a/TS29486_VAE_V2PApplicationRequirement.yaml +++ b/TS29486_VAE_V2PApplicationRequirement.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.1.0-alpha.1 + version: 1.1.0-alpha.2 title: VAE Server V2P Application Requirement Service description: | API for VAE Server V2P Application Requirement Service - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.486 V18.1.0 V2X Application Enabler (VAE) Services + description: 3GPP TS 29.486 V18.2.0 V2X Application Enabler (VAE) Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.486/' security: @@ -21,14 +21,14 @@ servers: variables: apiRoot: default: https://example.com - description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501 + description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122 paths: /provisionings: post: summary: Request the creation of a V2P Application Requirements Provisioning. tags: - - V2P Application Requirements Provisionings collection (Collection) + - V2P Application Requirements Provisionings (Collection) operationId: CreateV2PAppReqsProv requestBody: content: @@ -96,7 +96,7 @@ paths: '200': description: > OK. The requested Individual V2P Application Requirements Provisioning resource - representation shall be returned. + shall be returned. content: application/json: schema: @@ -182,7 +182,6 @@ paths: tags: - Individual V2P Application Requirements Provisioning (Document) requestBody: - description: Parameters to modify the existing configuration. required: true content: application/merge-patch+json: @@ -278,9 +277,9 @@ components: groupId: $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xGroupId' v2pQosReqs: - $ref: 'TS29486_VAE_VRUZoneManagement.yaml#/components/schemas/AppReqs' - appTrafficPattern: - $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + $ref: 'TS29486_VAE_SessionOrientedService.yaml#/components/schemas/AppplicationQosRequirement' + trafficPattern: + $ref: '#/components/schemas/AppTrafficPattern' paramOverPc5: $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParameterOverPc5' suppFeat: @@ -291,7 +290,7 @@ components: required: - requestorId - v2pQosReqs - - appTrafficPattern + - trafficPattern V2pAppReqDataPatch: description: > @@ -299,8 +298,23 @@ components: type: object properties: v2pQosReqs: - $ref: 'TS29486_VAE_VRUZoneManagement.yaml#/components/schemas/AppReqs' - appTrafficPattern: - $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + $ref: 'TS29486_VAE_SessionOrientedService.yaml#/components/schemas/AppplicationQosRequirement' + trafficPattern: + $ref: '#/components/schemas/AppTrafficPattern' paramOverPc5: $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParameterOverPc5Rm' + + AppTrafficPattern: + description: > + Represents an application traffic pattern for V2P services. + type: object + properties: + timeWindows: + type: array + items: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + minItems: 1 + periodicity: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + required: + - timeWindows diff --git a/TS29486_VAE_VRUZoneManagement.yaml b/TS29486_VAE_VRUZoneManagement.yaml index 00aca1c..ca1bf0d 100644 --- a/TS29486_VAE_VRUZoneManagement.yaml +++ b/TS29486_VAE_VRUZoneManagement.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: VAE Server VRU Zone Management Service - version: 1.0.0-alpha.1 + version: 1.0.0-alpha.2 description: | VAE Server VRU Zone Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.486 V18.1.0 V2X Application Enabler (VAE) Services + description: 3GPP TS 29.486 V18.2.0 V2X Application Enabler (VAE) Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.486/' servers: @@ -90,7 +90,7 @@ paths: '204': description: > No Content. The VRU Zone Management Enter/Leave notification is successfully - received and acknowledged and no content is returned in the response body. + received and acknowledged, and no content is returned in the response body. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -319,7 +319,7 @@ components: vruZoneInfo: $ref: '#/components/schemas/VRUZoneInfo' vruAppReqs: - $ref: '#/components/schemas/AppReqs' + $ref: '#/components/schemas/VRUAppReqs' notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' vruZoneId: @@ -341,20 +341,26 @@ components: Represents the requested modifications to a VRU Zone Management Subscription. type: object properties: + ueIdsList: + type: array + items: + $ref: 'TS29486_VAE_MessageDelivery.yaml#/components/schemas/V2xUeId' + minItems: 1 + nullable: true vruZoneInfo: $ref: '#/components/schemas/VRUZoneInfo' vruAppReqs: - $ref: '#/components/schemas/AppReqs' + $ref: '#/components/schemas/VRUAppReqs' notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' areaOfInterest: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea' + $ref: '#/components/schemas/GeographicAreaRm' timeValidity: $ref: '#/components/schemas/TimeValidity' EnterLeaveNotif: description: > - Represents a VRU Zone Management Enter/LeaveNotification. + Represents a VRU Zone Management Enter/Leave Notification. type: object properties: groupId: @@ -387,13 +393,13 @@ components: items: $ref: '#/components/schemas/UEType' minItems: 1 - vruZoneType: + zoneType: $ref: '#/components/schemas/VRUZoneType' required: - - typeOfUes - - vruZoneType + - ueTypes + - zoneType - AppReqs: + VRUAppReqs: description: > Represents VRU application requirements. type: object @@ -403,20 +409,11 @@ components: items: $ref: '#/components/schemas/MsgType' minItems: 1 - reliability: - format: float - type: number - minimum: 0 - maximum: 100 - delay: - type: integer - minimum: 1 - jitter: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' + appQosReq: + $ref: 'TS29486_VAE_SessionOrientedService.yaml#/components/schemas/AppplicationQosRequirement' anyOf: - - required: [reliability] - - required: [delay] - - required: [jitter] + - required: [supportedMsgs] + - required: [appQosReq] TimeValidity: description: > @@ -433,7 +430,8 @@ components: EnterLeaveInfo: description: > - Represents the information related to V2X UE(s) entering/leaving a VRU zone. + Represents the information related to a V2X UE or a V2X group entering/leaving a VRU + zone. type: object properties: time: @@ -456,6 +454,18 @@ components: - required: [speed] - required: [direction] + GeographicAreaRm: + description: Geographic area specified by different shape. + nullable: true + anyOf: + - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Point' + - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/PointUncertaintyCircle' + - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/PointUncertaintyEllipse' + - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/Polygon' + - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/PointAltitude' + - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/PointAltitudeUncertainty' + - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/EllipsoidArc' + UEType: anyOf: - type: string @@ -504,8 +514,8 @@ components: description: | Represents the message type. Possible values are: - - VAM: Indicates that the type of message is VAM. - - CAM: Indicates that the type of message is CAM. - - DENM: Indicates that the type of message is DENM. - - BSM: Indicates that the type of message is BSM. - - CPM: Indicates that the type of message is CPM. + - VAM: Indicates that the message type is VAM. + - CAM: Indicates that the message type is CAM. + - DENM: Indicates that the message type is DENM. + - BSM: Indicates that the message type is BSM. + - CPM: Indicates that the message type is CPM. diff --git a/TS29500_CustomHeaders.abnf b/TS29500_CustomHeaders.abnf index 517436d..e03d3b1 100644 --- a/TS29500_CustomHeaders.abnf +++ b/TS29500_CustomHeaders.abnf @@ -232,7 +232,7 @@ token68 = 1*( ALPHA / DIGIT / "-" / "." / "_" / "~" / "+" / "/" ) *"=" ; ---------------------------------------- ; 3GPP TS 29.500 ; -; Version: 18.4.0 (December 2023) +; Version: 18.5.0 (March 2024) ; ; (c) 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). ; ---------------------------------------- @@ -745,6 +745,9 @@ req-param-name = "retrans" / "idempotency-key" / "receivedrejectioncause" / "callback-uri-prefix" + / "nfinst" + / "nfservinst" + / "redirection-cause" / token req-param-value = token diff --git a/TS29502_Nsmf_PDUSession.yaml b/TS29502_Nsmf_PDUSession.yaml index 3624c49..6fd0cbc 100644 --- a/TS29502_Nsmf_PDUSession.yaml +++ b/TS29502_Nsmf_PDUSession.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.6' + version: '1.3.0-alpha.7' title: 'Nsmf_PDUSession' description: | SMF PDU Session Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.502 V18.5.0; 5G System; Session Management Services; Stage 3 + description: 3GPP TS 29.502 V18.6.0; 5G System; Session Management Services; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.502/ servers: @@ -725,6 +725,42 @@ paths: Content-Id: schema: type: string + '504': + description: unsuccessful update of an SM context - gateway timeout + content: + application/json: # message without binary body part + schema: + $ref: '#/components/schemas/SmContextUpdateError' + application/problem+json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProblemDetails' + multipart/related: # message with binary body part(s) + schema: + type: object + properties: # Request parts + jsonData: + $ref: '#/components/schemas/SmContextUpdateError' + binaryDataN1SmMessage: + type: string + format: binary + binaryDataN2SmInformation: + type: string + format: binary + encoding: + jsonData: + contentType: application/json + binaryDataN1SmMessage: + contentType: application/vnd.3gpp.5gnas + headers: + Content-Id: + schema: + type: string + binaryDataN2SmInformation: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' @@ -2042,6 +2078,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' anTypeToReactivate: $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' + anTypeOfN1N2Info: + $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' ratType: $ref: 'TS29571_CommonData.yaml#/components/schemas/RatType' presenceInLadn: @@ -2179,6 +2217,10 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' altHplmnSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + nsReplTerminInd: + type: boolean + enum: + - true SmContextUpdatedData: description: Data within Update SM Context Response @@ -2837,6 +2879,10 @@ components: $ref: '#/components/schemas/HrsboInfoFromVplmn' altSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + nsReplTerminInd: + type: boolean + enum: + - true disasterRoamingInd: type: boolean enum: @@ -3140,6 +3186,8 @@ components: items: $ref: '#/components/schemas/EcnMarkingCongestionInfoStatus' minItems: 1 + pduSetSupportInd: + type: boolean StatusNotification: description: Data within Notify Status Request @@ -3193,6 +3241,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Qfi' qosRules: $ref: 'TS29571_CommonData.yaml#/components/schemas/Bytes' + protocolDescription: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Bytes' ebi: $ref: '#/components/schemas/EpsBearerId' qosFlowDescription: @@ -3204,7 +3254,7 @@ components: defaultQosRuleInd: type: boolean ecnMarkingCongestInfoReq: - $ref: '#/components/schemas/EcnMarkingCongestInfoReq' + $ref: '#/components/schemas/EcnMarkingCongestionInfoReq' required: - qfi - qosRules @@ -3219,6 +3269,8 @@ components: $ref: '#/components/schemas/EpsBearerId' qosRules: $ref: 'TS29571_CommonData.yaml#/components/schemas/Bytes' + protocolDescription: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Bytes' qosFlowDescription: $ref: 'TS29571_CommonData.yaml#/components/schemas/Bytes' qosFlowProfile: @@ -3226,7 +3278,7 @@ components: associatedAnType: $ref: '#/components/schemas/QosFlowAccessType' ecnMarkingCongestInfoReq: - $ref: '#/components/schemas/EcnMarkingCongestInfoReq' + $ref: '#/components/schemas/EcnMarkingCongestionInfoReq' tscaiUl: $ref: '#/components/schemas/TscAssistanceInformation' tscaiDl: @@ -3269,7 +3321,9 @@ components: $ref: '#/components/schemas/QosMonitoringReq' qosRepPeriod: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' - pduSetQosPara: + pduSetQosDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' + pduSetQosUl: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' required: - 5qi @@ -3591,8 +3645,12 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' sNssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + altSnssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' hplmnSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + altHplmnSnssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' pduSessionType: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSessionType' gpsi: @@ -3740,10 +3798,10 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/OffloadIdentifier' minItems: 1 - easIpReplacementInfo: - $ref: 'TS29571_CommonData.yaml#/components/schemas/EasIpReplacementInfo' targetDnai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + trafficInfluInfo: + $ref: '#/components/schemas/TrafficInfluenceInfo' pendingUpdateInfoList: type: array items: @@ -3751,8 +3809,6 @@ components: minItems: 1 easInfoToRefresh: $ref: '#/components/schemas/EasInfoToRefresh' - pduSetSupportInd: - type: boolean required: - pduSessionId - dnn @@ -4174,6 +4230,14 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/OffloadIdentifier' minItems: 1 + easIpReplSupportInd: + type: boolean + default: false + vEasdfSecurityInfo: + type: array + items: + $ref: '#/components/schemas/DnsServerSecurityInformation' + minItems: 1 HrsboInfoFromHplmn: description: HR-SBO Information in response message @@ -4198,10 +4262,10 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId' minItems: 1 - easIpReplacementInfo: - $ref: 'TS29571_CommonData.yaml#/components/schemas/EasIpReplacementInfo' targetDnai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + trafficInfluInfo: + $ref: '#/components/schemas/TrafficInfluenceInfo' EasInfoToRefresh: description: EAS information to be refreshed for EAS re-discovery @@ -4223,16 +4287,19 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Fqdn' minItems: 1 - EcnMarkingCongestInfoReq: + EcnMarkingCongestionInfoReq: description: ECN Marking or Congestion Information Request type: object properties: - ecnMarkingReq: + ecnMarkingRanReq: + $ref: '#/components/schemas/EcnMarkingReq' + ecnMarkingUpfReq: $ref: '#/components/schemas/EcnMarkingReq' congestionInfoReq: $ref: '#/components/schemas/CongestionInfoReq' oneOf: - - required: [ ecnMarkingReq ] + - required: [ ecnMarkingRanReq ] + - required: [ ecnMarkingUpfReq ] - required: [ congestionInfoReq ] EcnMarkingCongestionInfoStatus: @@ -4265,6 +4332,52 @@ components: higherJitterInfo: $ref: 'TS29571_CommonData.yaml#/components/schemas/Int32' + TrafficInfluenceInfo: + description: Traffic influence information applicable at the VPLMN for an HR-SBO PDU session + type: object + properties: + trafficInfluData: + type: array + items: + $ref: '#/components/schemas/TrafficInfluenceData' + minItems: 1 + traffContDecs: + type: object + description: > + Map of Traffic Control data policy decisions. The key used in this map for each entry + is the tcId attribute of the corresponding TrafficControlData. + additionalProperties: + $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/TrafficControlData' + minProperties: 1 + + TrafficInfluenceData: + description: > + Traffic influence data comprising the Service Data Flow description and the Application + Function influence on traffic routing Enforcement Control parameters of a PCC rule. + type: object + properties: + flowInfos: + type: array + items: + $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' + minItems: 1 + description: An array of IP flow packet filter information. + appId: + type: string + description: A reference to the application detection filter configured at the UPF. + precedence: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + refTcData: + type: array + items: + type: string + minItems: 1 + maxItems: 1 + description: > + A reference to the TrafficControlData policy decision type. It is the tcId described + in clause 5.6.2.10 of 3GPP TS 29.512 [30]. + + # # SIMPLE DATA TYPES # @@ -4322,6 +4435,11 @@ components: type: string format: byte + DnsServerSecurityInformation: + description: DNS server security information + type: string + format: byte + # # ENUMERATIONS # diff --git a/TS29503_Nudm_PP.yaml b/TS29503_Nudm_PP.yaml index 2aae677..0e0c378 100644 --- a/TS29503_Nudm_PP.yaml +++ b/TS29503_Nudm_PP.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.4' + version: '1.3.0-alpha.5' title: 'Nudm_PP' description: | Nudm Parameter Provision Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.503 Unified Data Management Services, version 18.4.0 + description: 3GPP TS 29.503 Unified Data Management Services, version 18.5.0 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.503/' servers: @@ -1134,6 +1134,10 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/EcsServerAddr' spatialValidityCond: $ref: 'TS29571_CommonData.yaml#/components/schemas/SpatialValidityCond' + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' nullable: true 5MbsAuthorizationInfo: diff --git a/TS29503_Nudm_SDM.yaml b/TS29503_Nudm_SDM.yaml index a2ae93c..1e137eb 100644 --- a/TS29503_Nudm_SDM.yaml +++ b/TS29503_Nudm_SDM.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '2.3.0-alpha.5' + version: '2.3.0-alpha.6' title: 'Nudm_SDM' description: | Nudm Subscriber Data Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.503 Unified Data Management Services, version 18.4.0 + description: 3GPP TS 29.503 Unified Data Management Services, version 18.5.0 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.503/' servers: @@ -3196,10 +3196,18 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' mdtUserConsent: $ref: '#/components/schemas/MdtUserConsent' + adjacentPlmnMdtUserConsents: + description: A map (list of key-value pairs where PlmnId serves as key) of MdtUserConsent + type: object + additionalProperties: + $ref: '#/components/schemas/MdtUserConsent' + minProperties: 1 mdtConfiguration: $ref: 'TS29571_CommonData.yaml#/components/schemas/MdtConfiguration' traceData: $ref: 'TS29571_CommonData.yaml#/components/schemas/TraceData' + sharedTraceDataId: + $ref: '#/components/schemas/SharedDataId' cagData: $ref: '#/components/schemas/CagData' stnSr: @@ -3289,6 +3297,9 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/QmcConfigInfo' mbsrOperationAllowed: $ref: '#/components/schemas/MbsrOperationAllowed' + ncrOperationAllowed: + type: boolean + default: false ladnServiceAreas: description: A map(list of key-value pairs where singleNssai serves as key) of DnnLadnServiceAreas type: object @@ -3343,11 +3354,8 @@ components: minItems: 1 clockQualityDetailLevel: $ref: 'TS29571_CommonData.yaml#/components/schemas/ClockQualityDetailLevel' - clockQualityAcceptanceCriteria: - type: array - items: - $ref: 'TS29571_CommonData.yaml#/components/schemas/ClockQualityAcceptanceCriterion' - minItems: 1 + clockQualityAcceptanceCriterion: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ClockQualityAcceptanceCriterion' PcfSelectionAssistanceInfo: @@ -3536,6 +3544,14 @@ components: minProperties: 1 suppressNssrgInd: type: boolean + nssaiValidityTimeInfo: + description: > + A map(list of key-value pairs where single Nssai serves as key) + of the current validity time + type: object + additionalProperties: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + minProperties: 1 nullable: true UeContextInAmfData: @@ -3586,6 +3602,8 @@ components: default: false plmnId: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId' + emergencyRegistrationTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' PduSession: @@ -3908,6 +3926,8 @@ components: minItems: 1 traceData: $ref: 'TS29571_CommonData.yaml#/components/schemas/TraceData' + sharedTraceDataId: + $ref: '#/components/schemas/SharedDataId' SdmSubscription: type: object @@ -4723,10 +4743,7 @@ components: - serviceIds properties: afReqAuthorizations: - type: array - items: - $ref: '#/components/schemas/AfRequestAuthorization' - minItems: 1 + $ref: '#/components/schemas/AfRequestAuthorization' serviceIds: type: array items: @@ -4737,12 +4754,15 @@ components: description: AF Request Authorization type: object properties: - gptpAllowedInfo: - $ref: '#/components/schemas/GptpAllowedInfo' + gptpAllowedInfoList: + type: array + items: + $ref: '#/components/schemas/GptpAllowedInfo' + minItems: 1 astiAllowedInfo: $ref: '#/components/schemas/AstiAllowedInfo' oneOf: - - required: [ gptpAllowedInfo ] + - required: [ gptpAllowedInfoList ] - required: [ astiAllowedInfo ] GptpAllowedInfo: @@ -4917,8 +4937,69 @@ components: properties: mbsrOperationAllowedInd: type: boolean - mbsrValidTimePeriod: + default: false + mbsrLocationInfo: + $ref: '#/components/schemas/MbsrLocationInfo' + mbsrTimeInfo: + $ref: '#/components/schemas/MbsrTimeInfo' + + MbsrLocationInfo: + type: object + properties: + mbsrLocation: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Tai' + minItems: 1 + mbsrLocationAreas: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/AreaCode' + minItems: 1 + + MbsrTimeInfo: + type: object + properties: + mbsrTimeWindow: + type: array + items: + $ref: '#/components/schemas/ValidTimePeriod' + minItems: 1 + mbsrRecurTime: + type: array + items: + $ref: '#/components/schemas/RecurTime' + minItems: 1 + + RecurTime: + type: object + properties: + recurTimeWindow: $ref: '#/components/schemas/ValidTimePeriod' + recurType: + $ref: '#/components/schemas/RecurType' + recurMonth: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/MonthOfYear' + minItems: 1 + recurWeek: + type: array + items: + type: integer + minimum: 1 + maximum: 64 + minItems: 1 + recurDay: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DayOfWeek' + minItems: 1 + recurDate: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + minItems: 1 # SIMPLE TYPES: @@ -5157,13 +5238,14 @@ components: LcsMoServiceClass: description: > Indicates the requirement of the UE to request - its own location. + its own location or location related to other UE. anyOf: - type: string enum: - BASIC_SELF_LOCATION - AUTONOMOUS_SELF_LOCATION - TRANSFER_TO_THIRD_PARTY + - RANGING_SL_POS_EXPOSURE - type: string description: > This string provides forward-compatibility with future @@ -5365,6 +5447,9 @@ components: - MONITOR - DISCOVERER - DISCOVEREE + - LOCATED_UE + - SL_SERVER_UE + - SL_CLIENT_UE - type: string description: > This string provides forward-compatibility with future @@ -5404,3 +5489,20 @@ components: 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. + RecurType: + description: Indicates the recurrence applicable to a time window. + anyOf: + - type: string + enum: + - DAILY + - WEEKLY + - MONTHLY_BY_DATE + - MONTHLY_BY_DAY + - YEARLY + - WEEKDAYS_ONLY + - WEEKENDS_ONLY + - 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. diff --git a/TS29503_Nudm_UECM.yaml b/TS29503_Nudm_UECM.yaml index 5b3a36c..5e9e06b 100644 --- a/TS29503_Nudm_UECM.yaml +++ b/TS29503_Nudm_UECM.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.5' + version: '1.3.0-alpha.6' title: 'Nudm_UECM' description: | Nudm Context Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.503 Unified Data Management Services, version 18.4.0 + description: 3GPP TS 29.503 Unified Data Management Services, version 18.5.0 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.503/' servers: @@ -2787,6 +2787,8 @@ components: type: object additionalProperties: $ref: '#/components/schemas/EpsIwkPgw' + registrationTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' EpsIwkPgw: description: @@ -3378,6 +3380,8 @@ components: ipSmGwInd: type: boolean default: false + correlationId: + type: string supportedFeatures: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' diff --git a/TS29504_CustomHeaders.abnf b/TS29504_CustomHeaders.abnf index 81abb91..7132ce4 100644 --- a/TS29504_CustomHeaders.abnf +++ b/TS29504_CustomHeaders.abnf @@ -52,20 +52,17 @@ comment = "(" *( [ FWS ] ccontent ) [ FWS ] ")" ; RFC 9110 ; ---------------------------------------- -OWS = *( SP / HTAB ) +OWS = *( SP / HTAB ) -tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" - / "." / "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA +tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" + / "." / "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA -token = 1*tchar +token = 1*tchar -obs-text = %x80-FF +obs-text = %x80-FF -; ---------------------------------------- -; RFC 9110 -; ---------------------------------------- entity-tag = [ weak ] opaque-tag @@ -80,9 +77,9 @@ etagc = %x21 / %x23-7E / obs-text ; VCHAR except double quotes, plus obs-te ; ---------------------------------------- ; 3GPP TS 29.504 ; -; Version: 18.3.0 (September 2023) +; Version: 18.5.0 (March 2024) ; -; (c) 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). +; (c) 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). ; ---------------------------------------- ; diff --git a/TS29504_Nudr_DR.yaml b/TS29504_Nudr_DR.yaml index 8080d2d..5ed8a88 100644 --- a/TS29504_Nudr_DR.yaml +++ b/TS29504_Nudr_DR.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 2.3.0-alpha.5 + version: 2.3.0-alpha.6 title: 'Nudr_DataRepository API OpenAPI file' description: | Unified Data Repository Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.504 V18.4.0; 5G System; Unified Data Repository Services; Stage 3 + description: 3GPP TS 29.504 V18.5.0; 5G System; Unified Data Repository Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.504/' servers: diff --git a/TS29504_Nudr_GroupIDmap.yaml b/TS29504_Nudr_GroupIDmap.yaml index 3770ae3..53e064f 100644 --- a/TS29504_Nudr_GroupIDmap.yaml +++ b/TS29504_Nudr_GroupIDmap.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.2.0-alpha.2 + version: 1.2.0-alpha.3 title: 'Nudr_GroupIDmap' description: | Unified Data Repository Service for NF-Group ID retrieval. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.504 V18.4.0; 5G System; Unified Data Repository Services; Stage 3 + description: 3GPP TS 29.504 V18.5.0; 5G System; Unified Data Repository Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.504/' servers: @@ -78,6 +78,235 @@ paths: default: description: Unexpected error + /nf-group-ids/subscriptions: + post: + summary: Create subscription to NF Group ID mapping + operationId: CreateGroupIdSubscription + tags: + - NF Group ID Subscriptions (Collection) + parameters: + - name: supported-features + in: query + description: Features required to be supported by the target NF + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionData' + required: true + responses: + '201': + description: Expected response to a valid request + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionData' + headers: + Location: + description: > + Contains the URI of the newly created resource, according to the structure: + {apiRoot}/nudr-grup-id-map//nf-group-ids/subscriptions/{subscriptionId} + required: true + schema: + type: string + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + callbacks: + onGroupIdMapChange: + '{$request.body#/notificationUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/GroupIdMapNotify' + responses: + '204': + description: Expected response to a valid request + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + /nf-group-ids/subscriptions/{subscriptionId}: + get: + summary: Retrieves a individual subscription to NF Group ID mapping + operationId: QueryGroupIdSubscription + tags: + - NF Group ID Subscription (Document) + parameters: + - name: subscriptionId + in: path + required: true + description: Unique ID of the subscription to retrieve + schema: + type: string + responses: + '200': + description: Expected response to a valid request + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionData' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29571_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + patch: + summary: Modify an individual subscription to NF Group ID mapping + operationId: ModifyGroupIdSubscription + tags: + - NF Group ID Subscription (Document) + parameters: + - name: subscriptionId + in: path + required: true + schema: + type: string + - name: supported-features + in: query + description: Features required to be supported by the target NF + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + requestBody: + content: + application/json-patch+json: + schema: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PatchItem' + minItems: 1 + required: true + responses: + '204': + description: Successful response + '200': + description: Expected response to a valid request + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionData' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + delete: + summary: Deletes a subscription to NF Group ID mapping + operationId: RemoveGroupIdSubscription + tags: + - NF Group ID Subscription (Document) + parameters: + - name: subscriptionId + in: path + required: true + description: Unique ID of the subscription to remove + schema: + type: string + responses: + '204': + description: Expected response to a successful subscription removal + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + /routing-ids: get: summary: Retrieves Routing Indicators for the provided NF type and NF Group ID @@ -161,6 +390,50 @@ components: pattern: '^[0-9]{1,4}$' minItems: 1 + SubscriptionData: + description: > + Information of a subscription to notifications to UDR GroupIDmap service, + included in subscription requests and responses + type: object + required: + - notificationUri + - nfType + - nfGroupId + properties: + notificationUri: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' + nfType: + $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType' + nfGroupId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfGroupId' + subscriptionId: + type: string + readOnly: true + expiry: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + + GroupIdMapNotify: + description: > + Data sent in notifications from UDR to entities subscribed + to UDR GroupIDmap service + type: object + required: + - subscriberId + - nfType + - nfGroupId + properties: + subscriberId: + $ref: '#/components/schemas/SubscriberId' + nfType: + $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType' + nfGroupId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfGroupId' + identityRanges: + type: array + items: + $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/IdentityRange' + minItems: 1 + # SIMPLE TYPES: SubscriberId: diff --git a/TS29505_Subscription_Data.yaml b/TS29505_Subscription_Data.yaml index 9323872..8f015b0 100644 --- a/TS29505_Subscription_Data.yaml +++ b/TS29505_Subscription_Data.yaml @@ -5,11 +5,11 @@ info: description: | Unified Data Repository Service (subscription data). The API version is defined in 3GPP TS 29.504. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.505 V18.4.0; 5G System; Usage of the Unified Data Repository Service for subscription data; Stage 3 + description: 3GPP TS 29.505 V18.5.0; 5G System; Usage of the Unified Data Repository Service for subscription data; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.505/' paths: @@ -6446,8 +6446,7 @@ paths: content: application/json: schema: - items: - $ref: '#/components/schemas/SubscriptionDataSubscriptions' + $ref: '#/components/schemas/SubscriptionDataSubscriptions' '400': $ref: 'TS29571_CommonData.yaml#/components/responses/400' '401': @@ -10254,6 +10253,9 @@ components: routingId: type: string pattern: '^[0-9]{1,4}$' + 5gKeyHierarSupp: + type: boolean + default: true SequenceNumber: description: Contains the SQN. @@ -10645,6 +10647,21 @@ components: additionalProperties: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' minProperties: 1 + afIdGpsis: + description: > + A map (list of key-value pairs where AF ID serves as key) of GPSIs. + type: object + additionalProperties: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + minProperties: 1 + mtcProviderGpsis: + description: > + A map (list of key-value pairs where MTC Provider Information serves as key) + of GPSIs. + type: object + additionalProperties: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + minProperties: 1 UeUpdConfData: description: The complete UE Update Confirmation Data. diff --git a/TS29507_Npcf_AMPolicyControl.yaml b/TS29507_Npcf_AMPolicyControl.yaml index 64f58d9..4b545ca 100644 --- a/TS29507_Npcf_AMPolicyControl.yaml +++ b/TS29507_Npcf_AMPolicyControl.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.4 + version: 1.3.0-alpha.5 title: Npcf_AMPolicyControl description: | Access and Mobility Policy Control Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.507 V18.3.0; 5G System; Access and Mobility Policy Control Service. + description: 3GPP TS 29.507 V18.5.0; 5G System; Access and Mobility Policy Control Service. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.507/' servers: @@ -371,9 +371,11 @@ components: minProperties: 1 description: > Represents the network slice usage control information. - The key of the map is the on-demand S-NSSAI (within the "snssai" attribute of the - corresponding map value) to which the network slice usage control information is - related. + The key of the map shall be set to the on-demand S-NSSAI (within the "snssai" attribute + of the corresponding map entry encoded using the SliceUsgCtrlInfo data structure) to + which the network slice usage control information is related. + chfInfo: + $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ChargingInformation' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: @@ -465,17 +467,19 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/PartiallyAllowedSnssai' minProperties: 1 description: > - Represents the Partially Allowed NSSAI. The "snssai" attribute within the - PartiallyAllowedSnssai data type shall be the key of the map. + Represents the Partially Allowed NSSAI. + The key of the map shall be set to the value of the "snssai" attribute of the + corresponding map entry (encoded using the PartiallyAllowedSnssai data + structure). snssaisPartRejected: type: object additionalProperties: $ref: '#/components/schemas/SnssaiPartRejected' minProperties: 1 description: > - Represents the set of S-NSSAI(s) partially rejected in the RA. - The "snssai" attribute within the SnssaiPartRejected data type shall be the key of the - map. + Represents the set of S-NSSAI(s) rejected partially in the RA. + The key of the map shall be set to the value of the "snssai" attribute of the + corresponding map entry (encoded using the SnssaiPartRejected data structure). rejectedSnssais: type: array items: @@ -596,17 +600,19 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/PartiallyAllowedSnssai' minProperties: 1 description: > - Represents the Partially Allowed NSSAI. The "snssai" attribute within the - PartiallyAllowedSnssai data type shall be the key of the map. + Represents the Partially Allowed NSSAI. + The key of the map shall be set to the value of the "snssai" attribute of the + corresponding map entry (encoded using the PartiallyAllowedSnssai data + structure). snssaisPartRejected: type: object additionalProperties: $ref: '#/components/schemas/SnssaiPartRejected' minProperties: 1 description: > - Represents the set of S-NSSAI(s) partially rejected in the RA. - The "snssai" attribute within the SnssaiPartRejected data type shall be the key of the - map. + Represents the set of S-NSSAI(s) rejected partially in the RA. + The key of the map shall be set to the value of the "snssai" attribute of the + corresponding map entry (encoded using the SnssaiPartRejected data structure). rejectedSnssais: type: array items: @@ -730,9 +736,9 @@ components: minProperties: 1 description: > Contains the network slice replacement information. - The key of the map is the concerned unavailable S-NSSAI (within the "snssai" attribute - of the corresponding map value) to which the network slice replacement information is - related. + The key of the map shall be set to the concerned unavailable S-NSSAI provided within the + "snssai" attribute of the corresponding map entry (encoded using the SnssaiReplaceInfo + data structure) to which the network slice replacement information is related. sliceUsgCtrlInfoSets: type: object additionalProperties: @@ -740,9 +746,9 @@ components: minProperties: 1 description: > Represents the updated network slice usage control information. - The key of the map is the on-demand S-NSSAI (within the "snssai" attribute of the - corresponding map value) to which the network slice usage control information is - related. + The key of the map shall be set to the on-demand S-NSSAI (within the "snssai" attribute + of the corresponding map entry encoded using the SliceUsgCtrlInfo data structure) to + which the network slice usage control information is related. suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: @@ -841,17 +847,19 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/PartiallyAllowedSnssai' minProperties: 1 description: > - Represents the Partially Allowed NSSAI. The "snssai" attribute within the - PartiallyAllowedSnssai data type shall be the key of the map. + Represents the Partially Allowed NSSAI. + The key of the map shall be set to the value of the "snssai" attribute of the + corresponding map entry (encoded using the PartiallyAllowedSnssai data + structure). snssaisPartRejected: type: object additionalProperties: $ref: '#/components/schemas/SnssaiPartRejected' minProperties: 1 description: > - Represents the set of S-NSSAI(s) partially rejected in the RA. - The "snssai" attribute within the SnssaiPartRejected data type shall be the key of the - map. + Represents the set of S-NSSAI(s) rejected partially in the RA. + The key of the map shall be set to the value of the "snssai" attribute of the + corresponding map entry (encoded using the SnssaiPartRejected data structure). rejectedSnssais: type: array items: @@ -908,7 +916,7 @@ components: - snssai SnssaiPartRejected: - description: Represents the list of the S-NSSAI(s) partially rejected in the RA. + description: Represents the list of the S-NSSAI(s) rejected partially in the RA. type: object properties: snssai: @@ -974,8 +982,7 @@ components: DNN or UE requested for a DNN within the list of DNN candidates for replacement per S-NSSAI. - ACCESS_TYPE_CH: Access Type change. The AMF notifies that the access type and the RAT - type combinations available in the AMF for a UE with simultaneous 3GPP and non-3GPP - connectivity has changed. + type for a UE has changed. - UE_SLICE_MBR_CH: UE-Slice-MBR change. The NF service consumer notifies any changes in the subscribed UE-Slice-MBR for each subscribed S-NSSAI of the home PLMN mapping to a S-NSSAI of the serving PLMN. @@ -991,8 +998,8 @@ components: re-negotiation. - PARTIALLY_ALLOWED_NSSAI_CH: Partially Allowed NSSAI change. The NF service consumer notifies that the set of Partially Allowed S-NSSAI(s) of the UE has changed. - - SNSSAIS_PARTIALLY_REJECTED_CH: Change of the S-NSSAI(s) partially rejected in the RA. The - NF service consumer notifies that the set of S-NSSAI(s) partially rejected in the RA for + - SNSSAIS_PARTIALLY_REJECTED_CH: Change of the S-NSSAI(s) rejected partially in the RA. The + NF service consumer notifies that the set of S-NSSAI(s) rejected partially in the RA for the UE has changed. - REJECTED_SNSSAIS_CH: Change of the Rejected S-NSSAI(s) in the RA. The NF service consumer notifies that the set of the Rejected S-NSSAI(s) in the RA for the UE has changed. diff --git a/TS29508_Nsmf_EventExposure.yaml b/TS29508_Nsmf_EventExposure.yaml index 7291766..2c62445 100644 --- a/TS29508_Nsmf_EventExposure.yaml +++ b/TS29508_Nsmf_EventExposure.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 title: Nsmf_EventExposure description: | Session Management Event Exposure Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.508 V18.4.0; 5G System; Session Management Event Exposure Service. + description: 3GPP TS 29.508 V18.5.0; 5G System; Session Management Event Exposure Service. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.508/ servers: @@ -666,9 +666,6 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' dlCongInfo: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - cimf: - type: boolean - description: Represents the congestion information measurement failure indicator. ulDataRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' dlDataRate: diff --git a/TS29509_Nausf_UPUProtection.yaml b/TS29509_Nausf_UPUProtection.yaml index 11984dc..b2c838f 100644 --- a/TS29509_Nausf_UPUProtection.yaml +++ b/TS29509_Nausf_UPUProtection.yaml @@ -1,14 +1,14 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.1 + version: 1.3.0-alpha.2 title: Nausf_UPUProtection Service description: | AUSF UPU Protection Service. - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.509 V18.0.0; 5G System; Authentication Server Services + description: 3GPP TS 29.509 V18.4.0; 5G System; Authentication Server Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.509' servers: @@ -129,7 +129,7 @@ components: - counterUpu UpuData: - description: Contains UE parameters update data set (e.g., the updated Routing ID Data or the Default configured NSSAI). + description: Contains UE parameters update data set (e.g., the updated Routing ID Data or the Default configured NSSAI or the disaster roaming parameters). type: object properties: secPacket: @@ -141,6 +141,10 @@ components: minItems: 1 routingId: $ref: 'TS29544_Nspaf_SecuredPacket.yaml#/components/schemas/RoutingId' + drei: + type: boolean + aol: + type: boolean # # SIMPLE TYPES: diff --git a/TS29510_Nnrf_NFDiscovery.yaml b/TS29510_Nnrf_NFDiscovery.yaml index 31b9261..8ceb986 100644 --- a/TS29510_Nnrf_NFDiscovery.yaml +++ b/TS29510_Nnrf_NFDiscovery.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.6' + version: '1.3.0-alpha.7' title: 'NRF NFDiscovery Service' description: | NRF NFDiscovery Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.510 V18.5.0; 5G System; Network Function Repository Services; Stage 3 + description: 3GPP TS 29.510 V18.6.0; 5G System; Network Function Repository Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.510/' servers: @@ -1097,6 +1097,8 @@ paths: description: PCF supports A2X schema: type: boolean + enum: + - true - name: a2x-capability in: query description: indicates the A2X capability that the target PCF needs to support. @@ -1171,6 +1173,14 @@ paths: type: boolean enum: - true + - name: ursp-delivery-eps-support-ind + in: query + description: > + Indicates whether a PCF supporting URSP delivery in EPS needs to be discovered + schema: + type: boolean + enum: + - true responses: '200': @@ -2122,6 +2132,15 @@ components: minProperties: 1 selectionConditions: $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/SelectionConditions' + canaryRelease: + type: boolean + default: false + exclusiveCanaryReleaseSelection: + type: boolean + default: false + sharedProfileDataId: + type: string + format: uuid NFService: description: > @@ -2270,6 +2289,15 @@ components: minProperties: 1 selectionConditions: $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/SelectionConditions' + canaryRelease: + type: boolean + default: false + exclusiveCanaryReleaseSelection: + type: boolean + default: false + sharedServiceDataId: + type: string + format: uuid PreferredSearch: description: > @@ -2445,6 +2473,7 @@ components: - TARGET_NF_SUSPENDED - TARGET_NF_UNDISCOVERABLE - QUERY_PARAMS_COMBINATION_NO_MATCH + - TARGET_NF_TYPE_NOT_SUPPORTED - UNSPECIFIED - type: string diff --git a/TS29510_Nnrf_NFManagement.yaml b/TS29510_Nnrf_NFManagement.yaml index b92f9de..8ceae6c 100644 --- a/TS29510_Nnrf_NFManagement.yaml +++ b/TS29510_Nnrf_NFManagement.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.6' + version: '1.3.0-alpha.7' title: 'NRF NFManagement Service' description: | NRF NFManagement Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.510 V18.5.0; 5G System; Network Function Repository Services; Stage 3 + description: 3GPP TS 29.510 V18.6.0; 5G System; Network Function Repository Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.510/' servers: @@ -393,7 +393,11 @@ paths: schema: type: string '400': - $ref: 'TS29571_CommonData.yaml#/components/responses/400' + description: Bad Request + content: + application/problem+json: + schema: + $ref: '#/components/schemas/NFProfileRegistrationError' '401': $ref: 'TS29571_CommonData.yaml#/components/responses/401' '403': @@ -604,6 +608,415 @@ paths: default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' + /shared-data/{sharedDataId}: + get: + summary: Read the shared data identified by a given NF sharedDataId + operationId: GetSharedData + tags: + - Shared Data (Document) + security: + - {} + - oAuth2ClientCredentials: + - nnrf-nfm + - oAuth2ClientCredentials: + - nnrf-nfm + - nnrf-nfm:shared-data:read + parameters: + - name: sharedDataId + in: path + description: Unique ID of the Shared Data + required: true + schema: + type: string + format: uuid + - name: requester-features + in: query + description: Features supported by the NF Service Consumer + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + responses: + '200': + description: Expected response to a valid request + headers: + ETag: + description: Entity Tag containing a strong validator, described in IETF RFC 9110, 8.8.3 + schema: + type: string + content: + application/json: + schema: + $ref: '#/components/schemas/SharedData' + '307': + description: Temporary Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target NRF + required: true + schema: + type: string + '308': + description: Permanent Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target NRF + required: true + schema: + type: string + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29571_CommonData.yaml#/components/responses/406' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '501': + $ref: 'TS29571_CommonData.yaml#/components/responses/501' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + put: + summary: Register new Shared Data + operationId: RegisterSharedData + tags: + - Shared Data (Document) + security: + - {} + - oAuth2ClientCredentials: + - nnrf-nfm + - oAuth2ClientCredentials: + - nnrf-nfm + - nnrf-nfm:shared-data:write + parameters: + - name: sharedDataId + in: path + required: true + description: Unique ID of the Shared Data to register + schema: + type: string + format: uuid + - name: Content-Encoding + in: header + description: Content-Encoding, described in IETF RFC 9110 + schema: + type: string + - name: Accept-Encoding + in: header + description: Accept-Encoding, described in IETF RFC 9110 + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SharedData' + required: true + responses: + '200': + description: OK (Shared Data Replacement) + content: + application/json: + schema: + $ref: '#/components/schemas/SharedData' + headers: + Accept-Encoding: + description: Accept-Encoding, described in IETF RFC 9110 + schema: + type: string + Content-Encoding: + description: Content-Encoding, described in IETF RFC 9110 + schema: + type: string + ETag: + description: Entity Tag containing a strong validator, described in IETF RFC 9110, 8.8.3 + schema: + type: string + '201': + description: Expected response to a valid request + content: + application/json: + schema: + $ref: '#/components/schemas/SharedData' + headers: + Location: + description: > + Contains the URI of the newly created resource, according to the structure: + {apiRoot}/nnrf-nfm//shared-data/{sharedDataId} + required: true + schema: + type: string + Accept-Encoding: + description: Accept-Encoding, described in IETF RFC 9110 + schema: + type: string + Content-Encoding: + description: Content-Encoding, described in IETF RFC 9110 + schema: + type: string + ETag: + description: Entity Tag containing a strong validator, described in IETF RFC 9110, 8.8.3 + schema: + type: string + '204': + description: No Content (Shared Data Replacement) + '307': + description: Temporary Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target NRF + required: true + schema: + type: string + '308': + description: Permanent Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target NRF + required: true + schema: + type: string + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '501': + $ref: 'TS29571_CommonData.yaml#/components/responses/501' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + patch: + summary: Update Shared Data + operationId: UpdateSharedData + tags: + - Shared Data (Document) + security: + - {} + - oAuth2ClientCredentials: + - nnrf-nfm + - oAuth2ClientCredentials: + - nnrf-nfm + - nnrf-nfm:shared-data:write + parameters: + - name: sharedDataId + in: path + required: true + description: Unique ID of shared data to update + schema: + type: string + format: uuid + - name: Content-Encoding + in: header + description: Content-Encoding, described in IETF RFC 9110 + schema: + type: string + - name: Accept-Encoding + in: header + description: Accept-Encoding, described in IETF RFC 9110 + schema: + type: string + - name: If-Match + in: header + description: Validator for conditional requests, as described in IETF RFC 9110, 8.8.3 + schema: + type: string + requestBody: + content: + application/json-patch+json: + schema: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PatchItem' + minItems: 1 + required: true + responses: + '200': + description: Expected response to a valid request + content: + application/json: + schema: + $ref: '#/components/schemas/SharedData' + headers: + Accept-Encoding: + description: Accept-Encoding, described in IETF RFC 9110 + schema: + type: string + ETag: + description: Entity Tag containing a strong validator, described in IETF RFC 9110, 8.8.3 + schema: + type: string + Content-Encoding: + description: Content-Encoding, described in IETF RFC 9110 + schema: + type: string + '204': + description: Expected response with empty body + headers: + Accept-Encoding: + description: Accept-Encoding, described in IETF RFC 9110 + schema: + type: string + '307': + description: Temporary Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target NRF + required: true + schema: + type: string + '308': + description: Permanent Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target NRF + required: true + schema: + type: string + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '409': + $ref: 'TS29571_CommonData.yaml#/components/responses/409' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '412': + $ref: 'TS29571_CommonData.yaml#/components/responses/412' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '501': + $ref: 'TS29571_CommonData.yaml#/components/responses/501' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + delete: + summary: Delete Shared Data identified by a given sharedDataId + operationId: DeleteSharedData + tags: + - Shared Data (Document) + security: + - {} + - oAuth2ClientCredentials: + - nnrf-nfm + - oAuth2ClientCredentials: + - nnrf-nfm + - nnrf-nfm:shared-data:write + parameters: + - name: sharedDataId + in: path + required: true + description: Unique ID of the Shared Data to deregister + schema: + type: string + format: uuid + responses: + '204': + description: Expected response to a successful deregistration + '307': + description: Temporary Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target NRF + required: true + schema: + type: string + '308': + description: Permanent Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target NRF + required: true + schema: + type: string + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '501': + $ref: 'TS29571_CommonData.yaml#/components/responses/501' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + /subscriptions: post: summary: Create a new subscription @@ -964,6 +1377,10 @@ components: Access to subscribe to the complete profile of NF instances nnrf-nfm:nf-instance:write: > Access to write (create, update, delete) an individual NF Instance ID resource + nnrf-nfm:shared-dat:read: > + Access to read shared data + nnrf-nfm:shared-data:write: > + Access to write (create, update, delete) shared data schemas: @@ -1420,7 +1837,48 @@ components: minProperties: 1 selectionConditions: $ref: '#/components/schemas/SelectionConditions' + canaryRelease: + type: boolean + default: false + exclusiveCanaryReleaseSelection: + type: boolean + default: false + sharedProfileDataId: + type: string + format: uuid + SharedData: + description: Shared Data + type: object + required: + - sharedDataId + properties: + sharedDataId: + type: string + format: uuid + sharedProfileData: + $ref: '#/components/schemas/NFProfile' + sharedServiceData: + $ref: '#/components/schemas/NFService' + + NFProfileRegistrationError: + description: NF Profile Registration Error. + allOf: + - $ref: 'TS29571_CommonData.yaml#/components/schemas/ProblemDetails' + - $ref: '#/components/schemas/SharedDataIdList' + + SharedDataIdList: + description: Shared Data IDs + type: object + required: + - sharedDataIds + properties: + sharedDataIds: + type: array + items: + type: string + format: uuid + minItems: 1 NFService: description: > @@ -1571,6 +2029,15 @@ components: $ref: '#/components/schemas/PlmnOauth2' selectionConditions: $ref: '#/components/schemas/SelectionConditions' + canaryRelease: + type: boolean + default: false + exclusiveCanaryReleaseSelection: + type: boolean + default: false + sharedServiceDataId: + type: string + format: uuid NFType: description: NF types known to NRF @@ -1633,11 +2100,14 @@ components: - MBSF - MBSTF - PANF + - IP_SM_GW + - SMS_ROUTER - DCSF - MRF - MRFP - MF - SLPKMF + - RH - type: string NefId: @@ -1670,12 +2140,16 @@ components: type: object required: - nfStatusNotificationUri - - subscriptionId properties: nfStatusNotificationUri: type: string reqNfInstanceId: $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' + sharedDataIds: + type: array + items: + type: string + minItems: 1 subscrCond: $ref: '#/components/schemas/SubscrCond' subscriptionId: @@ -2225,7 +2699,9 @@ components: type: object required: - sNssai - - dnnSmfInfoList + anyOf: + - required: [ dnnSmfInfoList ] + - required: [ dnnSmfInfoListId ] properties: sNssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/ExtSnssai' @@ -2234,6 +2710,8 @@ components: items: $ref: '#/components/schemas/DnnSmfInfoItem' minItems: 1 + dnnSmfInfoListId: + type: integer DnnSmfInfoItem: description: Set of parameters supported by SMF for a given DNN @@ -2252,6 +2730,11 @@ components: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' - $ref: '#/components/schemas/WildcardDnai' minItems: 1 + uePlmnRangeList: + type: array + items: + $ref: '#/components/schemas/PlmnRange' + minItems: 1 UpfInfo: description: Information of an UPF NF Instance @@ -2351,7 +2834,9 @@ components: type: object required: - sNssai - - dnnUpfInfoList + anyOf: + - required: [ dnnUpfInfoList ] + - required: [ dnnUpfInfoListId ] properties: sNssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/ExtSnssai' @@ -2368,6 +2853,8 @@ components: items: $ref: '#/components/schemas/InterfaceUpfInfoItem' minItems: 1 + dnnUpfInfoListId: + type: integer DnnUpfInfoItem: description: Set of parameters supported by UPF for a given DNN @@ -2580,8 +3067,16 @@ components: rangingSlPosSupportInd: type: boolean default: false - upPositioningInd: - description: user plane positioning capability is supported by the LMF + urspEpsSupport: + description: URSP delivery in EPS is supported by the PCF + type: boolean + default: false + vplmnRuleSupport: + description: VPLMN specific rules is supported by the PCF + type: boolean + default: false + urspEnforceSupport: + description: URSP rule enforcement is supported by the PCF type: boolean default: false @@ -2880,6 +3375,7 @@ components: - NF_REGISTERED - NF_DEREGISTERED - NF_PROFILE_CHANGED + - SHARED_DATA_CHANGED - type: string NotificationData: @@ -2918,6 +3414,18 @@ components: - oneOf: - required: [ nfProfile ] - required: [ completeNfProfile ] + # + # Condition: If 'event' takes value 'SHARED_DATA_CHANGED', + # then 'sharedDataChanges' must be present + # + - anyOf: + - not: + properties: + event: + type: string + enum: + - SHARED_DATA_CHANGED + - required: [ sharedDataChanges ] properties: event: $ref: '#/components/schemas/NotificationEventType' @@ -2972,6 +3480,11 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/ChangeItem' minItems: 1 + sharedDataChanges: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ChangeItem' + minItems: 1 conditionEvent: $ref: '#/components/schemas/ConditionEventType' subscriptionContext: @@ -3037,10 +3550,11 @@ components: - nnef-pfdmanagement - nnef-smcontext - nnef-eventexposure - - nnef-eas-deployment-info + - nnef-eas-deployment - nnef-dnai-mapping - nnef-traffic-influence-data - nnef-ecs-addr-cfg-info + - nnef-ueid - 3gpp-cp-parameter-provisioning - 3gpp-device-triggering - 3gpp-bdt @@ -3096,6 +3610,8 @@ components: - nnwdaf-mlmodelprovision - nnwdaf-mlmodeltraining - nnwdaf-mlmodelmonitor + - nnwdaf-roamingdata + - nnwdaf-roaminganalytics - ngmlc-loc - nucmf-provisioning - nucmf-uecapabilitymanagement @@ -3117,17 +3633,17 @@ components: - nnssaaf-aiw - naanf-akma - n5gddnmf-discovery - - nmfaf-3dadm - - nmfaf-3cadm + - nmfaf-3dadatamanagement + - nmfaf-3cadatamanagement - neasdf-dnscontext - neasdf-baselinednspattern - - ndccf-dm - - ndccf-cm + - ndccf-datamanagement + - ndccf-contextmanagement - nnsacf-nsac - nnsacf-slice-ee - nmbsmf-tmgi - nmbsmf-mbssession - - nadrf-dm + - nadrf-datamanagement - nadrf-mlmodelmanagement - nbsp-gba - ntsctsf-time-sync @@ -3783,6 +4299,10 @@ components: rangingslposSupportInd: type: boolean default: false + upPositioningInd: + description: user plane positioning capability is supported by the LMF + type: boolean + default: false GmlcInfo: description: Information of a GMLC NF Instance @@ -5204,7 +5724,8 @@ components: ConditionGroup: description: > List (array) of conditions (joined by the "and" or "or" logical relationship), - under which an NF Instance with an NFStatus or NFServiceStatus value set to "CANARY_RELEASE" + under which an NF Instance with an NFStatus or NFServiceStatus value set to, + "CANARY_RELEASE", or with a "canaryRelease" attribute set to true, shall be selected by an NF Service Consumer. type: object oneOf: diff --git a/TS29512_Npcf_SMPolicyControl.yaml b/TS29512_Npcf_SMPolicyControl.yaml index da300f0..5b11e7d 100644 --- a/TS29512_Npcf_SMPolicyControl.yaml +++ b/TS29512_Npcf_SMPolicyControl.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Npcf_SMPolicyControl API - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 description: | Session Management Policy Control Service - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.512 V18.4.0; 5G System; Session Management Policy Control Service. + description: 3GPP TS 29.512 V18.5.0; 5G System; Session Management Policy Control Service. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.512/' security: @@ -448,6 +448,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/TraceData' sliceInfo: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + altSliceInfo: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' qosFlowUsage: $ref: '#/components/schemas/QosFlowUsage' servNfId: @@ -679,8 +681,12 @@ components: $ref: '#/components/schemas/UePolicyContainer' sliceUsgCtrlInfo: $ref: '#/components/schemas/SliceUsgCtrlInfo' - vplmnOffload: - $ref: 'TS29571_CommonData.yaml#/components/schemas/VplmnOffloadingInfo' + vplmnOffloadInfos: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/VplmnOffloadingInfo' + minItems: 1 + description: List of VPLMN Specific offloading information. SmPolicyNotification: description: Represents a notification on the update of the SM policies. @@ -708,8 +714,10 @@ components: $ref: '#/components/schemas/ApplicationDescriptor' contVer: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion' - protoDesc: - $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ProtoDesc' + protoDescDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + protoDescUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' pccRuleId: type: string description: Univocally identifies the PCC rule within a PDU session. @@ -936,7 +944,9 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketDelBudget' packetErrorRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketErrRate' - pduSetQos: + pduSetQosDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosParaRm' + pduSetQosUl: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosParaRm' required: - qosId @@ -1027,6 +1037,8 @@ components: $ref: '#/components/schemas/UpPathChgEvent' steerFun: $ref: '#/components/schemas/SteeringFunctionality' + transMode: + $ref: '#/components/schemas/TransportMode' steerModeDl: $ref: '#/components/schemas/SteeringMode' steerModeUl: @@ -1407,11 +1419,17 @@ components: items: $ref: '#/components/schemas/QosMonitoringReport' minItems: 1 + description: QoS Monitoring reporting information. qosMonDatRateReps: type: array items: $ref: '#/components/schemas/QosMonitoringReport' minItems: 1 + qosMonCongReps: + type: array + items: + $ref: '#/components/schemas/QosMonitoringReport' + minItems: 1 userLocationInfoTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' repPraInfos: @@ -1528,7 +1546,7 @@ components: $ref: '#/components/schemas/L4sSupportInfo' minItems: 1 description: ECN marking for L4S support availability in 5GS. - sliceInfo: + altSliceInfo: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' batOffsetInfo: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/BatOffsetInfo' @@ -2041,19 +2059,23 @@ components: qmId: type: string description: Univocally identifies the QoS monitoring policy data within a PDU session. + qosMonParamType: + $ref: '#/components/schemas/QosMonitoringParamType' reqQosMonParams: type: array items: $ref: '#/components/schemas/RequestedQosMonitoringParameter' minItems: 1 description: > - indicates the QoS information to be monitored when the QoS Monitoring is enabled for + Indicates the QoS information to be monitored when the QoS Monitoring is enabled for the service data flow. repFreqs: type: array items: $ref: '#/components/schemas/ReportingFrequency' minItems: 1 + description: > + Indicates the frequency for the reporting, such as event triggered and/or periodic. repThreshDl: type: integer description: Indicates the period of time in units of miliiseconds for DL packet delay. @@ -2069,10 +2091,8 @@ components: nullable: true conThreshDl: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - nullable: true conThreshUl: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - nullable: true waitTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSecRm' repPeriod: @@ -2139,11 +2159,6 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' dlCongInfo: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - cimf: - type: boolean - description: > - Congestion information measurement failure indicator. When set to true, it indicates - that a congestion information failure has occurred.Default value is false if omitted. required: - refPccRuleIds # @@ -2289,8 +2304,10 @@ components: description: Contains Traffic Parameter(s) related control information. type: object properties: - periodInfo: - $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/PeriodicityInfo' + periodUl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSecRm' + periodDl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/DurationMilliSecRm' reqTrafficParas: type: array items: @@ -2307,8 +2324,6 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' repPeriod: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSecRm' - required: - - reqTrafficParas L4sSupportInfo: description: Contains the ECN marking for L4S support in 5GS information. @@ -2335,6 +2350,8 @@ components: properties: pduSessInactivTimer: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSecRm' + anyOf: + - required: [pduSessInactivTimer] 5GSmCause: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' @@ -3168,3 +3185,37 @@ components: description: > This string provides forward-compatibility with future extensions to the enumeration and is not used to encode content defined in the present version of this API. + + QosMonitoringParamType: + anyOf: + - type: string + enum: + - PACKET_DELAY + - CONGESTION + - DATA_RATE + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration and + is not used to encode + content defined in the present version of this API. + description: | + Indicates the QoS monitoring parameter type. + Possible values are: + - PACKET_DELAY: Indicates that the QoS monitoring parameter to be measured is packet delay. + - CONGESTION: Indicates that the QoS monitoring parameter to be measured is congestion. + - DATA_RATE: Indicates that the QoS monitoring parameter to be measured is data rate. +# + TransportMode: + description: > + Indicates the Transport Mode when the steering functionality is MPQUIC functionality. + anyOf: + - type: string + enum: + - DATAGRAM_MODE_1 + - DATAGRAM_MODE_2 + - STREAM_MODE + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. diff --git a/TS29514_Npcf_PolicyAuthorization.yaml b/TS29514_Npcf_PolicyAuthorization.yaml index 4b60b5a..94f8a7c 100644 --- a/TS29514_Npcf_PolicyAuthorization.yaml +++ b/TS29514_Npcf_PolicyAuthorization.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Npcf_PolicyAuthorization Service API - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 description: | PCF Policy Authorization Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.514 V18.4.0; 5G System; Policy Authorization Service; Stage 3. + description: 3GPP TS 29.514 V18.5.0; 5G System; Policy Authorization Service; Stage 3. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.514/' servers: @@ -866,6 +866,13 @@ components: properties: servAuthInfo: $ref: '#/components/schemas/ServAuthInfo' + directNotifReports: + type: array + items: + $ref: '#/components/schemas/DirectNotificationReport' + minItems: 1 + description: > + QoS monitoring parameter(s) that cannot be directly notified for the indicated flows. ueIds: type: array items: @@ -985,6 +992,8 @@ components: $ref: '#/components/schemas/QosMonitoringInformation' congestMon: $ref: '#/components/schemas/QosMonitoringInformation' + rttMon: + $ref: '#/components/schemas/QosMonitoringInformation' reqAnis: type: array items: @@ -1001,6 +1010,10 @@ components: minItems: 1 directNotifInd: type: boolean + description: > + Indicates whether the direct event notification is requested (true) or not (false) for + the provided QoS monitoring parameters. + Default value is false. avrgWndw: $ref: 'TS29571_CommonData.yaml#/components/schemas/AverWindow' @@ -1035,7 +1048,7 @@ components: pdvMon: $ref: '#/components/schemas/QosMonitoringInformationRm' congestMon: - $ref: '#/components/schemas/QosMonitoringInformation' + $ref: '#/components/schemas/QosMonitoringInformationRm' reqAnis: type: array items: @@ -1048,6 +1061,9 @@ components: directNotifInd: type: boolean nullable: true + description: > + Indicates whether the direct event notification is requested (true) or not (false) for + the provided and/or previously provided QoS monitoring parameters. avrgWndw: $ref: 'TS29571_CommonData.yaml#/components/schemas/AverWindowRm' nullable: true @@ -1168,12 +1184,18 @@ components: Indicates the service data flow needs to meet the Round-Trip (RT) latency requirement of the service, when it is included and set to "true". The default value is "false" if omitted. - pduSetQos: + pduSetQosDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' + pduSetQosUl: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosPara' - pduSetProtDesc: - $ref: '#/components/schemas/ProtoDesc' - periodInfo: - $ref: '#/components/schemas/PeriodicityInfo' + protoDescDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + protoDescUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + periodUl: + $ref: '#/components/schemas/DurationMilliSec' + periodDl: + $ref: '#/components/schemas/DurationMilliSec' l4sInd: $ref: '#/components/schemas/UplinkDownlinkSupport' @@ -1297,12 +1319,18 @@ components: Indicates the service data flow needs to meet the Round-Trip (RT) latency requirement of the service, when it is included and set to "true". The default value is "false" if omitted. - pduSetQos: + pduSetQosDl: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosParaRm' - pduSetProtDesc: - $ref: '#/components/schemas/ProtoDescRm' - periodInfo: - $ref: '#/components/schemas/PeriodicityInfo' + pduSetQosUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSetQosParaRm' + protoDescDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + protoDescUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ProtocolDescription' + periodUl: + $ref: '#/components/schemas/DurationMilliSecRm' + periodDl: + $ref: '#/components/schemas/DurationMilliSecRm' l4sInd: $ref: '#/components/schemas/UplinkDownlinkSupport' nullable: true @@ -1486,6 +1514,11 @@ components: items: $ref: '#/components/schemas/QosMonitoringReport' minItems: 1 + rttMonReports: + type: array + items: + $ref: '#/components/schemas/QosMonitoringReport' + minItems: 1 ranNasRelCauses: type: array items: @@ -1534,7 +1567,6 @@ components: batOffsetInfo: $ref: '#/components/schemas/BatOffsetInfo' - AfEventSubscription: description: Describes the event information delivered in the subscription. type: object @@ -1549,6 +1581,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' waitTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' + qosMonParamType: + $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/QosMonitoringParamType' AfEventNotification: description: Describes the event information delivered in the notification. @@ -1903,7 +1937,8 @@ components: QosMonitoringInformation: description: > - Indicates the QoS Monitoring information to report, i.e. UL and/or DL and or round trip delay. + Indicates the QoS Monitoring information to report, i.e. UL and/or DL and or + round trip delay. type: object properties: repThreshDl: @@ -1969,9 +2004,9 @@ components: repThreshDatRateDl: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRateRm' conThreshDl: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + $ref: 'TS29571_CommonData.yaml#/components/schemas/UintegerRm' conThreshUl: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + $ref: 'TS29571_CommonData.yaml#/components/schemas/UintegerRm' nullable: true PcscfRestorationRequestData: @@ -2031,9 +2066,6 @@ components: items: type: integer minItems: 1 - cimf: - type: boolean - description: Represents the congestion information measurement failure indicator. ulDataRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' dlDataRate: @@ -2212,27 +2244,6 @@ components: Identification of the flows. If no flows are provided, the BAT offset applies for all flows of the AF session. - ProtoDesc: - description: Contains the protocol description namely protocol details and payload type - information. - type: object - properties: - protocol: - $ref: '#/components/schemas/MediaProtocol' - payloadType: - $ref: '#/components/schemas/PayloadType' - - ProtoDescRm: - description: Contains the protocol description namely protocol details and payload type - information. - type: object - properties: - protocol: - $ref: '#/components/schemas/MediaProtocol' - payloadType: - $ref: '#/components/schemas/PayloadType' - nullable: true - PdvMonitoringReport: description: Packet Delay Variation reporting information. type: object @@ -2253,18 +2264,6 @@ components: type: integer description: Round trip packet delay variation in units of milliseconds. - PeriodicityInfo: - description: > - Indicates the time period between the start of the two data bursts in Uplink and/or Downlink - direction. - type: object - properties: - periodUl: - $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSecRm' - periodDl: - $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSecRm' - nullable: true - AddFlowDescriptionInfo: description: Contains additional flow description information. type: object @@ -2298,6 +2297,23 @@ components: $ref: '#/components/schemas/Flows' minItems: 1 + DirectNotificationReport: + description: > + Represents the QoS monitoring parameters that cannot be directly notified for + the indicated flows. + type: object + required: + - qosMonParamType + properties: + qosMonParamType: + $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/QosMonitoringParamType' + flows: + type: array + items: + $ref: '#/components/schemas/Flows' + minItems: 1 + + # # EXTENDED PROBLEMDETAILS # @@ -2364,13 +2380,16 @@ components: maximum: 8 nullable: true - MediaProtocol: - description: represents the different media protocol applicable for XRM muti modality session. - type: string + DurationMilliSec: + description: Indicates the time interval in units of milliseconds. + type: integer + + DurationMilliSecRm: + description: > + This data type is defined in the same way as the "DurationMillisec" data type, but with the + OpenAPI nullable property set to true. + type: integer - PayloadType: - description: represents the different payload type. - type: string # # ENUMERATIONS DATA TYPES # diff --git a/TS29515_Ngmlc_Location.yaml b/TS29515_Ngmlc_Location.yaml index b8ceabc..c30ed6b 100644 --- a/TS29515_Ngmlc_Location.yaml +++ b/TS29515_Ngmlc_Location.yaml @@ -1,14 +1,14 @@ openapi: 3.0.0 info: - version: '1.2.0-alpha.5' + version: '1.2.0-alpha.6' title: 'Ngmlc_Location' description: | GMLC Location Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.515 V18.4.0; 5G System; Gateway Mobile Location Services; Stage 3 + description: 3GPP TS 29.515 V18.5.0; 5G System; Gateway Mobile Location Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.515/' servers: @@ -364,6 +364,119 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/504' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' + /perform-privacy-check-id-mapping: + post: + summary: Privacy Check Id Mapping for Ranging SL Positioing Service + operationId: PrivacyCheckIdMapping + tags: + - Privacy Check Id Mapping + security: + - {} + - oAuth2ClientCredentials: + - ngmlc-loc + - oAuth2ClientCredentials: + - ngmlc-loc + - ngmlc-loc:perform-privacy-check-id-mapping:invoke + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PrivacyCheckIdMappingReqData' + required: true + responses: + '200': + description: Successful result for Privacy Check Id Mapping + content: + application/json: + schema: + $ref: '#/components/schemas/PrivacyCheckIdMappingRespData' + '307': + $ref: 'TS29571_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29571_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + '504': + $ref: 'TS29571_CommonData.yaml#/components/responses/504' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + /provide-ranging: + post: + summary: Request Ranging information between UEs + operationId: RequestRanging + tags: + - Request Ranging + security: + - {} + - oAuth2ClientCredentials: + - ngmlc-loc + - oAuth2ClientCredentials: + - ngmlc-loc + - ngmlc-loc:provide-ranging:invoke + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/InputRangingData' + required: true + responses: + '200': + description: Expected response to a valid request + content: + application/json: + schema: + $ref: '#/components/schemas/RangingDatas' + '307': + $ref: 'TS29571_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29571_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + '504': + $ref: 'TS29571_CommonData.yaml#/components/responses/504' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' components: securitySchemes: @@ -378,6 +491,9 @@ components: ngmlc-loc:cancel-location:invoke: Access to invoke Cancel Location ngmlc-loc:location-update:invoke: Access to invoke Location update ngmlc-loc:loc-update-subs:invoke: Access to invoke Location update subscribe + ngmlc-loc:perform-privacy-check-id-mapping:invoke: Access to invoke Privacy Check Id Mapping + ngmlc-loc:provide-ranging:invoke: Access to invoke Provide Ranging + schemas: # @@ -393,6 +509,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' supi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' + appLayerId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' extGroupId: $ref: 'TS29571_CommonData.yaml#/components/schemas/ExternalGroupId' intGroupId: @@ -474,10 +592,12 @@ components: relatedUEs: type: array items: - $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RelatedUE' + $ref: '#/components/schemas/RelatedUE' minItems: 1 mappedQoSEps: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/MappedLocationQoSEps' + coordinateID: + type: integer LocationDataExt: description: Extended Location Data for UEs @@ -543,8 +663,8 @@ components: indoorOutdoorInd: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/IndoorOutdoorInd' relatedApplicationlayerId: - type: string - rangeDirection: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + distanceDirection: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangeDirection' 2dRelativeLocation: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/2DRelativeLocation' @@ -679,8 +799,8 @@ components: indoorOutdoorInd: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/IndoorOutdoorInd' relatedApplicationlayerId: - type: string - rangeDirection: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + distanceDirection: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangeDirection' 2dRelativeLocation: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/2DRelativeLocation' @@ -829,6 +949,106 @@ components: evtRptCountCriteria: type: integer + RelatedUE: + description: Related UE Information + type: object + required: + - relatedUEType + properties: + appLayerId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + supi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' + relatedUEType: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RelatedUEType' + + PrivacyCheckIdMappingReqData: + description: Privacy Check Id Mapping Request Data + type: object + properties: + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + appLayerId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + clientUeId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + + PrivacyCheckIdMappingRespData: + description: Privacy Check Id Mapping Response Data + type: object + properties: + appLayerId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + + InputRangingData: + description: Contains the input parameters in PorvideRanging service operation + type: object + required: + - externalClientType + properties: + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + supi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' + locationQoS: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/LocationQoS' + externalClientType: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/ExternalClientType' + externalClientIdentification: + $ref: '#/components/schemas/ExternalClientIdentification' + requestedRangingSlResult: + type: array + items: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangingSlResult' + minItems: 1 + scheduledLocTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + + + RangingDatas: + description: Ranging Data List + type: object + required: + - rangingDatas + properties: + rangingDatas: + type: array + items: + $ref: '#/components/schemas/RangingData' + minItems: 1 + + + RangingData: + description: Contains the response parameters in ProvideRanging service operation + type: object + properties: + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + supi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' + timestampOfLocationEstimate: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + achievedQos: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/MinorLocationQoS' + rangingDataList: + type: array + items: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/PositioningMethodAndUsage' + minItems: 1 + relatedApplicationlayerId: + type: string + rangeDirection: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangeDirection' + 2dRelativeLocation: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/2DRelativeLocation' + 3dRelativeLocation: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/3DRelativeLocation' + relativeVelocity: + $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/VelocityEstimate' # # SIMPLE TYPES diff --git a/TS29517_Naf_EventExposure.yaml b/TS29517_Naf_EventExposure.yaml index 0ba5bea..7c34db1 100644 --- a/TS29517_Naf_EventExposure.yaml +++ b/TS29517_Naf_EventExposure.yaml @@ -1,16 +1,16 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 title: Naf_EventExposure description: | AF Event Exposure Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.517 V18.4.0; 5G System; Application Function Event Exposure Service; Stage 3. + 3GPP TS 29.517 V18.5.0; 5G System; Application Function Event Exposure Service; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.517/ servers: @@ -451,6 +451,8 @@ components: $ref: '#/components/schemas/AfEvent' eventFilter: $ref: '#/components/schemas/EventFilter' + eventRepInfo: + $ref: 'TS29523_Npcf_EventExposure.yaml#/components/schemas/ReportingInformation' required: - event - eventFilter diff --git a/TS29518_Namf_Communication.yaml b/TS29518_Namf_Communication.yaml index 6d056f7..c66f188 100644 --- a/TS29518_Namf_Communication.yaml +++ b/TS29518_Namf_Communication.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 title: Namf_Communication description: | AMF Communication Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. security: @@ -14,7 +14,7 @@ security: - namf-comm externalDocs: - description: 3GPP TS 29.518 V18.4.0; 5G System; Access and Mobility Management Services + description: 3GPP TS 29.518 V18.5.0; 5G System; Access and Mobility Management Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.518/' servers: @@ -1759,6 +1759,105 @@ paths: application/json: schema: $ref: '#/components/schemas/N2InformationTransferRspData' + multipart/related: # response with binary body part(s) + schema: + type: object + properties: + jsonData: + $ref: '#/components/schemas/N2InformationTransferRspData' + binaryDataN2Information1: + type: string + format: binary + binaryDataN2Information2: + type: string + format: binary + binaryDataN2Information3: + type: string + format: binary + binaryDataN2Information4: + type: string + format: binary + binaryDataN2Information5: + type: string + format: binary + binaryDataN2Information6: + type: string + format: binary + binaryDataN2Information7: + type: string + format: binary + binaryDataN2Information8: + type: string + format: binary + binaryDataN2Information9: + type: string + format: binary + binaryDataN2Information10: + type: string + format: binary + encoding: + jsonData: + contentType: application/json + binaryDataN2Information1: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information2: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information3: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information4: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information5: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information6: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information7: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information8: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information9: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information10: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string '307': $ref: 'TS29571_CommonData.yaml#/components/responses/307' '308': @@ -1899,13 +1998,94 @@ paths: properties: # Request parts jsonData: $ref: '#/components/schemas/N2InformationNotification' - binaryDataN2Information: + binaryDataN2Information1: + type: string + format: binary + binaryDataN2Information2: + type: string + format: binary + binaryDataN2Information3: + type: string + format: binary + binaryDataN2Information4: + type: string + format: binary + binaryDataN2Information5: + type: string + format: binary + binaryDataN2Information6: + type: string + format: binary + binaryDataN2Information7: + type: string + format: binary + binaryDataN2Information8: + type: string + format: binary + binaryDataN2Information9: + type: string + format: binary + binaryDataN2Information10: type: string format: binary encoding: jsonData: contentType: application/json - binaryDataN2Information: + binaryDataN2Information1: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information2: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information3: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information4: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information5: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information6: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information7: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information8: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information9: + contentType: application/vnd.3gpp.ngap + headers: + Content-Id: + schema: + type: string + binaryDataN2Information10: contentType: application/vnd.3gpp.ngap headers: Content-Id: @@ -2912,6 +3092,12 @@ components: managementMdtInd: type: boolean default: false + adjacenPlmnMngtMdtInds: + description: A map (list of key-value pairs where PlmnId serves as key) of Booleans + type: object + additionalProperties: + type: boolean + minProperties: 1 immediateMdtConf: $ref: '#/components/schemas/ImmediateMdtConf' ecRestrictionDataWb: @@ -3117,6 +3303,12 @@ components: $ref: '#/components/schemas/PWSResponseData' supportedFeatures: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + tssRspPerNgranList: + type: array + items: + $ref: '#/components/schemas/TssRspPerNgran' + minItems: 1 + maxItems: 10 required: - result MmContext: @@ -3157,6 +3349,11 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/PartiallyAllowedSnssai' minItems: 1 + replacedSnssaiMappingList: + type: array + items: + $ref: '#/components/schemas/SliceReplacementMapping' + minItems: 1 nsInstanceList: type: array items: @@ -3192,6 +3389,13 @@ components: minItems: 1 uuaaMmStatus: $ref: '#/components/schemas/UuaaMmStatus' + deregInactTimerList: + description: The S-NSSAI shall be used as the key of the map. + type: object + additionalProperties: + $ref: '#/components/schemas/DeregInactTimerInfo' + voSupportMatchInd: + type: boolean required: - accessType SeafData: @@ -3237,6 +3441,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' sNssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + altSnssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' dnn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' selectedDnn: @@ -3297,6 +3503,8 @@ components: type: string additionalSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + altAdditionalSnssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' interPlmnApiRoot: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' pgwFqdn: @@ -3957,7 +4165,17 @@ components: nfId: $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' tssContainer: - $ref: '#/components/schemas/N2InfoContent' + type: array + items: + $ref: '#/components/schemas/N2InfoContent' + minItems: 1 + maxItems: 10 + tssRspPerNgranList: + type: array + items: + $ref: '#/components/schemas/TssRspPerNgran' + minItems: 1 + maxItems: 10 required: - tssContainer @@ -4009,6 +4227,43 @@ components: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/UpConnectionStatus' servingLMFIdentification: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/LMFIdentification' + + DeregInactTimerInfo: + description: Network Slice Deregistration Inactivity Timer Information + type: object + required: + - deregInactExpiryTime + properties: + deregInactExpiryTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NssaaStatus' + + TssRspPerNgran: + description: Represents a TSS related N2 information data part + type: object + properties: + ngranId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/GlobalRanNodeId' + ngranFailureInfo: + $ref: '#/components/schemas/NgranFailureInfo' + tssContainer: + $ref: '#/components/schemas/N2InfoContent' + required: + - ngranId + + SliceReplacementMapping: + description: > + Represents the mapping between a replaced S-NSSAI in serving PLMN to its alternative S-NSSAI + type: object + properties: + replacedSnssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + altSnssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + required: + - replacedSnssai + - altSnssai + + # # SIMPLE DATA TYPES # @@ -4079,6 +4334,7 @@ components: - SMS - UPDP - LCS + - UPP-CM - type: string N1N2MessageTransferCause: description: Enumeration for N1N2Message Transfer Cause @@ -4291,3 +4547,12 @@ components: - NO_HR_AGREEMENT - UNSPECIFIED - type: string + + + NgranFailureInfo: + description: Indicates a NG-RAN failure event. + anyOf: + - type: string + enum: + - NG_RAN_NOT_REACHABLE + - type: string diff --git a/TS29518_Namf_EventExposure.yaml b/TS29518_Namf_EventExposure.yaml index 3b773c0..e03bc40 100644 --- a/TS29518_Namf_EventExposure.yaml +++ b/TS29518_Namf_EventExposure.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.4 + version: 1.3.0-alpha.5 title: Namf_EventExposure description: | AMF Event Exposure Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. security: @@ -14,7 +14,7 @@ security: - namf-evts externalDocs: - description: 3GPP TS 29.518 V18.4.0; 5G System; Access and Mobility Management Services + description: 3GPP TS 29.518 V18.5.0; 5G System; Access and Mobility Management Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.518/' servers: @@ -413,6 +413,11 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' minItems: 1 + notifyForGroupList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId' + minItems: 1 notifyForSnssaiDnnList: type: array items: @@ -663,7 +668,7 @@ components: - replace path: type: string - pattern: '^\/eventList\/-|(\/eventList\/0|\/eventList\/[1-9][0-9]*){1}(\/presenceInfoList\/0|\/presenceInfoList\/[1-9][0-9]* |\/notifyForSupiList|\/notifyForSnssaiDnnList)?|\/excludeSupiList|\/excludeGpsiList|\/includeSupiList|\/includeGpsiList$' + pattern: '^\/eventList\/-|(\/eventList\/0|\/eventList\/[1-9][0-9]*){1}(\/presenceInfoList\/0|\/presenceInfoList\/[1-9][0-9]* |\/notifyForSupiList|\/notifyForGroupList|\/notifyForSnssaiDnnList)?|\/excludeSupiList|\/excludeGpsiList|\/includeSupiList|\/includeGpsiList$' value: $ref: '#/components/schemas/AmfEvent' presenceInfo: @@ -693,6 +698,11 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' minItems: 1 + notifyForGroupList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId' + minItems: 1 notifyForSnssaiDnnList: type: array items: diff --git a/TS29518_Namf_Location.yaml b/TS29518_Namf_Location.yaml index c434cf6..8c076a9 100644 --- a/TS29518_Namf_Location.yaml +++ b/TS29518_Namf_Location.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 title: Namf_Location description: | AMF Location Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. security: @@ -14,7 +14,7 @@ security: - namf-loc externalDocs: - description: 3GPP TS 29.518 V18.4.0; 5G System; Access and Mobility Management Services + description: 3GPP TS 29.518 V18.5.0; 5G System; Access and Mobility Management Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.518/' servers: @@ -353,6 +353,8 @@ components: $ref: 'TS29515_Ngmlc_Location.yaml#/components/schemas/UpLocRepInfoAf' mappedQoSEps: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/MappedLocationQoSEps' + coordinateID: + type: integer required: - lcsClientType - lcsLocation @@ -430,8 +432,8 @@ components: losNlosMeasureInd: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/LosNlosMeasureInd' relatedApplicationlayerId: - type: string - rangeDirection: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + distanceDirection: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangeDirection' 2dRelativeLocation: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/2DRelativeLocation' @@ -518,8 +520,8 @@ components: losNlosMeasureInd: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/LosNlosMeasureInd' relatedApplicationlayerId: - type: string - rangeDirection: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + distanceDirection: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangeDirection' 2dRelativeLocation: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/2DRelativeLocation' diff --git a/TS29518_Namf_MBSBroadcast.yaml b/TS29518_Namf_MBSBroadcast.yaml index d5864fc..37fa5b4 100644 --- a/TS29518_Namf_MBSBroadcast.yaml +++ b/TS29518_Namf_MBSBroadcast.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.1.0-alpha.3 + version: 1.1.0-alpha.4 title: Namf_MBSBroadcast description: | AMF MBSBroadcast Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.518 V18.4.0; 5G System; Access and Mobility Management Services + description: 3GPP TS 29.518 V18.5.0; 5G System; Access and Mobility Management Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.518/' servers: diff --git a/TS29518_Namf_MBSCommunication.yaml b/TS29518_Namf_MBSCommunication.yaml index bf36bfb..b46cb65 100644 --- a/TS29518_Namf_MBSCommunication.yaml +++ b/TS29518_Namf_MBSCommunication.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.1.0-alpha.1 + version: 1.1.0-alpha.2 title: Namf_MBSCommunication description: | AMF Communication Service for MBS. - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.518 V18.0.0; 5G System; Access and Mobility Management Services + description: 3GPP TS 29.518 V18.5.0; 5G System; Access and Mobility Management Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.518/' servers: diff --git a/TS29518_Namf_MT.yaml b/TS29518_Namf_MT.yaml index c4403c6..64828d4 100644 --- a/TS29518_Namf_MT.yaml +++ b/TS29518_Namf_MT.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.4 + version: 1.3.0-alpha.5 title: Namf_MT description: | AMF Mobile Terminated Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. security: @@ -14,7 +14,7 @@ security: - namf-mt externalDocs: - description: 3GPP TS 29.518 V18.4.0; 5G System; Access and Mobility Management Services + description: 3GPP TS 29.518 V18.5.0; 5G System; Access and Mobility Management Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.518/' servers: @@ -290,14 +290,11 @@ components: extBufSupport: type: boolean default: false - arp: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Arp' - 5qi: - $ref: 'TS29571_CommonData.yaml#/components/schemas/5Qi' - ppi: - $ref: 'TS29518_Namf_Communication.yaml#/components/schemas/Ppi' - qfi: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Qfi' + qosFlowInfoList: + type: array + items: + $ref: '#/components/schemas/QosFlowInfo' + minItems: 1 pduSessionId: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSessionId' required: @@ -420,6 +417,23 @@ components: required: - ueList + QosFlowInfo: + description: QOS Flow information + type: object + properties: + qfi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Qfi' + ppi: + $ref: 'TS29518_Namf_Communication.yaml#/components/schemas/Ppi' + arp: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Arp' + 5qi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/5Qi' + dlDataSize: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint16' + required: + - qfi + UeContextInfoClass: description: Indicates the UE Context information class anyOf: diff --git a/TS29519_Application_Data.yaml b/TS29519_Application_Data.yaml index 42bcecd..303804f 100644 --- a/TS29519_Application_Data.yaml +++ b/TS29519_Application_Data.yaml @@ -5,12 +5,12 @@ info: title: Unified Data Repository Service API file for Application Data description: | The API version is defined in 3GPP TS 29.504 - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.519 V18.4.0; 5G System; Usage of the Unified Data Repository Service for Policy Data, + 3GPP TS 29.519 V18.5.0; 5G System; Usage of the Unified Data Repository Service for Policy Data, Application Data and Structured Data for Exposure. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.519/' @@ -2350,10 +2350,10 @@ paths: /application-data/af-qos-data-sets: get: - summary: Retrieve AF Requested QoS Data - operationId: ReadAFReqQoSData + summary: Retrieve one or several existing Individual AF Requested QoS Data Set resource(s). + operationId: ReadAFReqQoSDataSets tags: - - AF Requested QoS Data (Store) + - AF Requested QoS Data Sets (Collection) security: - {} - oAuth2ClientCredentials: @@ -2368,7 +2368,7 @@ paths: parameters: - name: dnns in: query - description: Each element identifies a DNN + description: Each element identifies a DNN. required: false schema: type: array @@ -2377,7 +2377,7 @@ paths: minItems: 1 - name: snssais in: query - description: Each element identifies a slice. + description: Each element identifies a network slice. required: false content: application/json: @@ -2386,9 +2386,9 @@ paths: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' minItems: 1 - - name: internal-group-ids + - name: int-group-ids in: query - description: Each element identifies a group of users. + description: Each element identifies a group of subscriber(s). required: false schema: type: array @@ -2397,7 +2397,7 @@ paths: minItems: 1 - name: supis in: query - description: Each element identifies the user. + description: Each element identifies a subscriber. required: false schema: type: array @@ -2406,7 +2406,7 @@ paths: minItems: 1 - name: data-set-ids in: query - description: Each element identifies an Individual AF requested QoS resource. + description: Each element identifies an Individual AF requested QoS Set resource. required: false schema: type: array @@ -2421,13 +2421,16 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' responses: '200': - description: The AF requested QoS Data stored in the UDR are returned. + description: > + The requested "Individual AF requested QoS Data Set resource(s) stored in the UDR are + returned. content: application/json: schema: type: array items: $ref: '#/components/schemas/AfRequestedQosData' + minItems: 0 '400': $ref: 'TS29571_CommonData.yaml#/components/responses/400' '401': @@ -2452,11 +2455,20 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/default' /application-data/af-qos-data-sets/{afReqQosId}: + parameters: + - name: afReqQosId + in: path + description: > + Represents the identifier of an Individual AF Requested QoS Data Set. + required: true + schema: + type: string + put: - summary: Create or update an Individual AF Requested QoS Data resource. - operationId: CreateIndividualAFReqQoSData + summary: Create or update an Individual AF Requested QoS Data Set resource. + operationId: CreateOrUpdateIndAFReqQoSDataSet tags: - - Individual AF Requested QoS Data (Document) + - Individual AF Requested QoS Data Set (Document) security: - {} - oAuth2ClientCredentials: @@ -2474,19 +2486,11 @@ paths: application/json: schema: $ref: '#/components/schemas/AfRequestedQosData' - parameters: - - name: afReqQosId - in: path - description: > - The Identifier of an Individual AF Requested QoS Data to be created or updated. - required: true - schema: - type: string responses: '201': description: > - The creation of an Individual AF Requested QoS Data resource is confirmed and a - representation of that resource is returned. + Created. The Individual AF Requested QoS Data Set resource is successfully created and a + representation of the created resource shall be returned in the response body. content: application/json: schema: @@ -2494,11 +2498,22 @@ paths: headers: Location: description: > - Contains the URI of the newly created resource, according to the structure: - {apiRoot}/nudr-dr//application-data/af-qos-data-sets/{afReqQosId} + Contains the URI of the newly created resource. required: true schema: type: string + '200': + description: > + OK. The Individual AF Requested QoS Data Set resource is successfully updated and a + representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/AfRequestedQosData' + '204': + description: > + No Content. The Individual AF Requested QoS Data Set resource is successfully updated + and no content is returned in the response body. '400': $ref: 'TS29571_CommonData.yaml#/components/responses/400' '401': @@ -2525,11 +2540,12 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' + patch: - summary: Modify part of the properties of an individual AF requested QoS Data resource - operationId: UpdateIndividualAFRequestedQoSData + summary: Modify of an existing Individual AF Requested QoS Data Set" resource + operationId: ModifyIndAFReqQoSDataSet tags: - - Individual AF requested QoS Data (Document) + - Individual AF requested QoS Data Set (Document) security: - {} - oAuth2ClientCredentials: @@ -2547,25 +2563,19 @@ paths: application/merge-patch+json: schema: $ref: '#/components/schemas/AfRequestedQosDataPatch' - parameters: - - name: afReqQosId - in: path - description: > - The Identifier of an Individual AF Requested QoS Data to be updated. - required: true - schema: - type: string responses: '200': description: > - The update of an Individual AF Requested QoS Data resource is confirmed and - a response body containing AF Requested QoS Data shall be returned. + OK. The Individual AF Requested QoS Data Set resource is successfully modified and a + representation of the updated resource shall be returned in the response body. content: application/json: schema: $ref: '#/components/schemas/AfRequestedQosData' '204': - description: No content + description: > + No Content. The Individual AF Requested QoS Data Set resource is successfully modified + and no content is returned in the response body. '400': $ref: 'TS29571_CommonData.yaml#/components/responses/400' '401': @@ -2590,11 +2600,12 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' + delete: - summary: Delete an individual AF requested QoS Data resource - operationId: DeleteIndividualAFRequestedQosData + summary: Delete an existing Individual AF requested QoS Data Set resource + operationId: DeleteIndAFReqQosDataSet tags: - - Individual AF requested QoS Data (Document) + - Individual AF requested QoS Data Set (Document) security: - {} - oAuth2ClientCredentials: @@ -2606,17 +2617,10 @@ paths: - nudr-dr - nudr-dr:application-data - nudr-dr:application-data:af-qos-data-sets:modify - parameters: - - name: afReqQosId - in: path - description: > - The Identifier of an Individual AF Requested QoS Data to be deleted. - required: true - schema: - type: string responses: '204': - description: The Individual AF requested QoS Data was deleted successfully. + description: > + No Content. The Individual AF requested QoS Data Set is successfully deleted. '400': $ref: 'TS29571_CommonData.yaml#/components/responses/400' '401': @@ -3680,6 +3684,8 @@ components: minItems: 1 cachingTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + cachingTimer: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' resetIds: @@ -3692,6 +3698,8 @@ components: required: - applicationId - pfds + not: + required: [cachingTime,cachingTimer] BdtPolicyData: description: Represents applied BDT policy data. @@ -3857,6 +3865,8 @@ components: minItems: 1 paramForRangingSlPos: $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForRangingSlPos' + mappingInfo: + $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/MappingInfo' ServiceParameterDataPatch: description: Represents the service parameter data that can be updated. @@ -3920,6 +3930,8 @@ components: minItems: 1 paramForRangingSlPos: $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForRangingSlPosRm' + mappingInfo: + $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/MappingInfoRm' AmInfluData: description: Represents the AM Influence Data. @@ -4226,13 +4238,25 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' evSubsc: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EventsSubscReqData' - flowInfos: + flowInfo: type: array items: $ref: 'TS29122_CommonData.yaml#/components/schemas/FlowInfo' minItems: 1 + ethFlowInfo: + type: array + items: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription' + minItems: 1 + enEthFlowInfo: + type: array + items: + $ref: 'TS29122_CommonData.yaml#/components/schemas/EthFlowInfo' + minItems: 1 qosReference: type: string + qosReqs: + $ref: '#/components/schemas/QosRequirements' altSerReqs: type: array items: @@ -4257,13 +4281,29 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' tempInValidity: $ref: 'TS29565_Ntsctsf_QoSandTSCAssistance.yaml#/components/schemas/TemporalInValidity' + headers: + description: Contains the headers provisioned by the NEF. + type: array + items: + type: string + minItems: 1 suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' - required: - - suppFeat - oneOf: - - required: [supi] - - required: [interGroupId] + allOf: + - oneOf: + - required: [supi] + - required: [interGroupId] + - oneOf: + - required: [flowInfo] + - required: [ethFlowInfo] + - required: [enEthFlowInfo] + - oneOf: + - required: [qosReference] + - required: [qosReqs] + - not: + required: [qosReference, altQosReqs] + - not: + required: [altQosReqs, altQoSReferences] AfRequestedQosDataPatch: description: Represents modification of Individual AF Requested QoS data. @@ -4275,15 +4315,27 @@ components: nullable: true evSubsc: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EventsSubscReqDataRm' - flowInfos: + flowInfo: type: array items: $ref: 'TS29122_CommonData.yaml#/components/schemas/FlowInfo' minItems: 1 nullable: true + ethFlowInfo: + type: array + items: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription' + minItems: 1 + enEthFlowInfo: + type: array + items: + $ref: 'TS29122_CommonData.yaml#/components/schemas/EthFlowInfo' + minItems: 1 qosReference: type: string nullable: true + qosReqs: + $ref: '#/components/schemas/QosRequirementsRm' altSerReqs: type: array items: @@ -4302,16 +4354,14 @@ components: disUeNotif: type: boolean nullable: true - marBwDl: - $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRateRm' - marBwUl: - $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRateRm' - mirBwDl: - $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRateRm' - mirBwUl: - $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRateRm' tempInValidity: $ref: 'TS29565_Ntsctsf_QoSandTSCAssistance.yaml#/components/schemas/TemporalInValidity' + headers: + description: Contains the headers provisioned by the NEF. + type: array + items: + type: string + minItems: 1 DnaiEasMapping: description: Contains DNAI to EAS mapping information. @@ -4334,24 +4384,34 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' snssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + dnais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + minItems: 1 + description: DNAI(s) for the EAS Deployment Information. easIpAddrs: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr' minItems: 1 - description: Each element contains EAS addresses, address ranges, and/or prefixes. + description: > + Each element contains EAS IP address(es), IP address ranges, and/or IPv6 prefixes. fqdns: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/FqdnPatternMatchingRule' minItems: 1 - description: Each element conrtains FQDN matching rules for the EAS(s) of a DNAI. + description: Each element contains FQDN for the EAS(s) of a DNAI. + required: + - dnais anyOf: - required: [dnn] - required: [snssai] oneOf: - required: [easIpAddrs] - required: [fqdns] + EcsAddrData: description: Represents ECS Address Data. type: object @@ -4374,6 +4434,59 @@ components: required: - ecsServerAddr + QosRequirements: + description: Represents QoS requirements. + type: object + properties: + marBwUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + marBwDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + mirBwUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + mirBwDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + tsnQos: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TsnQosContainer' + tscaiTimeDom: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + tscaiInputDl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + tscaiInputUl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + capBatAdaptation: + type: boolean + description: > + Indicates the capability for AF to adjust the burst sending time, when it is supported + and set to "true". The default value is "false" if omitted. + + QosRequirementsRm: + description: Represents QoS requirements. + nullable: true + type: object + properties: + marBwUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + marBwDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + mirBwUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + mirBwDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + tsnQos: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TsnQosContainer' + tscaiTimeDom: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + tscaiInputDl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + tscaiInputUl: + $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer' + capBatAdaptation: + type: boolean + description: > + Indicates the capability for AF to adjust the burst sending time, when it is supported + and set to "true". The default value is "false" if omitted. + DataInd: anyOf: - type: string diff --git a/TS29519_Policy_Data.yaml b/TS29519_Policy_Data.yaml index abc40bd..ca0eba9 100644 --- a/TS29519_Policy_Data.yaml +++ b/TS29519_Policy_Data.yaml @@ -5,12 +5,12 @@ info: title: Unified Data Repository Service API file for policy data description: | The API version is defined in 3GPP TS 29.504 - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.519 V18.4.0; 5G System; Usage of the Unified Data Repository Service for Policy Data, + 3GPP TS 29.519 V18.5.0; 5G System; Usage of the Unified Data Repository Service for Policy Data, Application Data and Structured Data for Exposure. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.519/' @@ -2251,6 +2251,14 @@ components: description: > Indicates whether the PCF must enforce Access and Mobility management related policies based on subscriber spending limits. + spendLimInfo: + type: object + additionalProperties: + $ref: 'TS29594_Nchf_SpendingLimitControl.yaml#/components/schemas/PolicyCounterInfo' + minProperties: 1 + description: > + Contains the status of the requested policy counters for UE. + The key of the map is the attribute policyCounterId. suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' @@ -2316,6 +2324,14 @@ components: type: boolean description: > Indicates whether the PCF must enforce UE policies based on subscriber spending limits. + spendLimInfo: + type: object + additionalProperties: + $ref: 'TS29594_Nchf_SpendingLimitControl.yaml#/components/schemas/PolicyCounterInfo' + minProperties: 1 + description: > + Contains the status of the requested policy counters for UE. + The key of the map is the attribute policyCounterId. tracingReq: type: array items: @@ -2458,6 +2474,14 @@ components: description: > Indicates whether the PCF must enforce session management related policies based on subscriber spending limits. + spendLimInfo: + type: object + additionalProperties: + $ref: 'TS29594_Nchf_SpendingLimitControl.yaml#/components/schemas/PolicyCounterInfo' + minProperties: 1 + description: > + Contains the status of the requested policy counters for the PDU session. + The key of the map is the attribute policyCounterId. ipv4Index: $ref: '#/components/schemas/IpIndex' ipv6Index: @@ -3092,17 +3116,21 @@ components: properties: pdtqPolicy: $ref: 'TS29543_Npcf_PDTQPolicyControl.yaml#/components/schemas/PdtqPolicy' - warnNotifEnabled: type: boolean description: > - Indicates whether the PDTQ warning notification is enabled (true) or not (false). notifUri: + Indicates whether the PDTQ warning notification is enabled (true) or not (false). + notifUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' GroupPolicyData: description: Contains the group specific policy control subscription information. type: object properties: + maxGroupMbrUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + maxGroupMbrDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' remainGroupMbrUl: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' remainGroupMbrDl: @@ -3116,11 +3144,17 @@ components: data. type: object properties: + maxGroupMbrUl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + maxGroupMbrDl: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' remainGroupMbrUl: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' remainGroupMbrDl: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' anyOf: + - required: [maxGroupMbrUl] + - required: [maxGroupMbrDl] - required: [remainGroupMbrUl] - required: [remainGroupMbrDl] diff --git a/TS29520_Nnwdaf_AnalyticsInfo.yaml b/TS29520_Nnwdaf_AnalyticsInfo.yaml index 9858123..f84a214 100644 --- a/TS29520_Nnwdaf_AnalyticsInfo.yaml +++ b/TS29520_Nnwdaf_AnalyticsInfo.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 title: Nnwdaf_AnalyticsInfo description: | Nnwdaf_AnalyticsInfo Service API. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.520 V18.4.0; 5G System; Network Data Analytics Services. + description: 3GPP TS 29.520 V18.5.0; 5G System; Network Data Analytics Services. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.520/' security: @@ -285,11 +285,6 @@ components: items: $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/DnPerfInfo' minItems: 1 - pfdDetermInfos: - type: array - items: - $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/PfdDeterminationInfo' - minItems: 1 pduSesTrafInfos: type: array items: @@ -625,6 +620,18 @@ components: description: > Contains information identifying the ML model(s) that the consumer NWDAF is currently subscribing for the analytics. + anaAccuInfos: + type: array + items: + $ref: '#/components/schemas/AnalyticsAccuracyInfo' + minItems: 1 + description: The Analytics Accuracy related information. + modelAccuInfos: + type: array + items: + $ref: '#/components/schemas/MlModelAccuracyInfo' + minItems: 1 + description: The ML Model accuracy related information. required: - contextId @@ -705,6 +712,8 @@ components: $ref: '#/components/schemas/ContextType' minItems: 1 description: List of analytics context types. + nfConsumerInfo: + $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/VendorId' required: - contexts @@ -788,6 +797,64 @@ components: required: - nwPerfType + AnalyticsAccuracyInfo: + description: Analytics Accuracy related information needs to be transferred. + type: object + properties: + reportTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + pauseInd: + type: boolean + description: > + Indicates whether the analytics subscription has been paused. Set to "true" if it has + been paused, otherwise set to "false". + remainTimeWin: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + groundTruthInfo: + $ref: '#/components/schemas/GroundTruthInfo' + + GroundTruthInfo: + description: The ground truth information used for the accuracy information computation. + type: object + properties: + analyticsId: + $ref: '#/components/schemas/EventId' + dataSourceIds: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' + minItems: 1 + description: The NF instance ID(s) of the data source for ground truth data. + dataSourceSetIds: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfSetId' + minItems: 1 + description: The NF Set ID(s) of the data source for ground truth data. + dataSub: + $ref: 'TS29575_Nadrf_DataManagement.yaml#/components/schemas/DataSubscription' + groundTruthData: + type: string + description: The ground truth information. + required: + - analyticsId + + MlModelAccuracyInfo: + description: The ML Model Accuracy Subscription Information needs to be transferred. + type: object + properties: + subscriptionId: + type: string + description: The identifier of the subscription for the ML Model accuracy information. + sourceId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' + sourceSetId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfSetId' + accuSubInfo: + $ref: 'TS29520_Nnwdaf_MLModelProvision.yaml#/components/schemas/ModelProvisionParamsExt' + required: + - subscriptionId + # # ENUMERATIONS DATA TYPES # @@ -863,6 +930,8 @@ components: - DATA - AGGR_INFO - ML_MODELS + - ANALYTICS_ACCU_INFO + - ML_MODEL_ACCU_INFO - type: string description: > This string provides forward-compatibility with future @@ -881,6 +950,8 @@ components: - AGGR_INFO: Represents context information that is related to aggregation of analytics from multiple NWDAF subscriptions. - ML_MODELS: Represents context information about used ML models. + - ANALYTICS_ACCU_INFO: Represents the Analytics Accuracy related information. + - ML_MODEL_ACCU_INFO: Represents the ML Model accuracy related information. AdrfDataType: anyOf: diff --git a/TS29520_Nnwdaf_EventsSubscription.yaml b/TS29520_Nnwdaf_EventsSubscription.yaml index 1e78b45..396806c 100644 --- a/TS29520_Nnwdaf_EventsSubscription.yaml +++ b/TS29520_Nnwdaf_EventsSubscription.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 title: Nnwdaf_EventsSubscription description: | Nnwdaf_EventsSubscription Service API. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.520 V18.4.0; 5G System; Network Data Analytics Services. + description: 3GPP TS 29.520 V18.5.0; 5G System; Network Data Analytics Services. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.520/' security: @@ -2193,6 +2193,8 @@ components: properties: supi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' wlanPerTsInfos: type: array items: @@ -2201,8 +2203,10 @@ components: description: > WLAN performance information per Time Slot during the analytics target period. required: - - supi - wlanPerTsInfos + oneOf: + - required: [supi] + - required: [gpsi] WlanPerTsPerformanceInfo: description: WLAN performance information per Time Slot during the analytics target period. @@ -2432,7 +2436,25 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' dnn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' - flowDescriptions: + suggPfdInfoList: + type: array + items: + $ref: '#/components/schemas/SuggestedPfdInfo' + minItems: 1 + required: + - appId + - suggPfdInfoList + + SuggestedPfdInfo: + description: Represents the suggested PFD information for the application identifier. + type: object + properties: + pfdId: + type: string + description: > + Identifier of the PFD (i.e. new PFD ID assigned by NWDAF or existing PFD ID retrieved + from UDR which was generated by NWDAF). + ip3TupleList: type: array items: type: string @@ -2458,7 +2480,7 @@ components: pfdConfidence: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' required: - - appId + - pfdId PduSesTrafficInfo: description: Represents the PDU Set traffic analytics information. @@ -2641,8 +2663,6 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationId' ueLoc: $ref: 'TS29571_CommonData.yaml#/components/schemas/UserLocation' - dnai: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' dnn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' spatialValidity: @@ -2659,6 +2679,7 @@ components: description: > Contains the list of UEs classified based on experience level of E2E Data Volume Transfer Time + type: object properties: highLevel: type: array @@ -2694,6 +2715,7 @@ components: description: > Indicates the E2E data volume transfer time and the data volume used to derive the transfer time. + type: object properties: uplinkVolume: $ref: 'TS29122_CommonData.yaml#/components/schemas/Volume' @@ -2761,11 +2783,14 @@ components: inOutInd: type: boolean description: Indicates if the target location is indoors or outdoors. + confidence: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' required: - locAccPerMeths not: required: [inOutUePct, inOutInd] + LocAccuracyPerMethod: description: > Contains location accuracy analytics per positioning method. @@ -2775,11 +2800,15 @@ components: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/PositioningMethod' locAcc: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - losNlosPercent: + losNlosPct: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + losNlosInd: + type: boolean + description: Indicates whether the target location is measured with LOS or NLOS. required: - posMethod - locAcc + AccuracyReq: description: Represents the analytics accuracy requirement information. type: object @@ -2810,12 +2839,12 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' accuSampleNbr: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - anaAccuInd: $ref: '#/components/schemas/AnalyticsAccuracyIndication' MovBehavReq: description: Represents the Movement Behaviour analytics requirements. + type: object properties: locationGranReq: $ref: '#/components/schemas/LocInfoGranularity' @@ -2824,6 +2853,7 @@ components: MovBehavInfo: description: Represents the Movement Behaviour information. + type: object properties: geoLoc: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicalCoordinates' @@ -2837,6 +2867,7 @@ components: MovBehav: description: Represents the Movement Behaviour information per time slot. + type: object properties: tsStart: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' @@ -2864,6 +2895,7 @@ components: SpeedThresholdInfo: description: UEs information whose speed is faster than the speed threshold. + type: object properties: numOfUe: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' @@ -2872,6 +2904,7 @@ components: RelProxReq: description: Represents the Relative Proximity analytics requirements. + type: object properties: direction: type: array @@ -2888,6 +2921,7 @@ components: RelProxInfo: description: Represents the Relative Proximity information. + type: object properties: tsStart: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' @@ -2917,6 +2951,7 @@ components: UeProximity: description: Represents the Observed or Predicted proximity information. + type: object properties: ueDistance: type: integer @@ -2936,6 +2971,7 @@ components: UeTrajectory: description: Represents timestamped UE positions. + type: object properties: supi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' @@ -2954,6 +2990,7 @@ components: TimestampedLocation: description: The timestamped locations of the trajectory of the UE. + type: object properties: ts: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' @@ -2966,6 +3003,7 @@ components: TimeToCollisionInfo: description: Represents Time To Collision (TTC) information. + type: object properties: ttc: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' @@ -2976,6 +3014,7 @@ components: AnalyticsFeedbackInfo: description: Analytics feedback information. + type: object properties: actionTimes: type: array @@ -3113,7 +3152,6 @@ components: - RELATIVE_PROXIMITY: Indicates that the event subscribed is the Relative Proximity information. - Accuracy: anyOf: - type: string @@ -3309,6 +3347,7 @@ components: - BOTH_STAT_PRED_NOT_ALLOWED - PREDICTION_NOT_ALLOWED - UNSATISFIED_REQUESTED_ANALYTICS_TIME + - NO_ROAMING_SUPPORT - OTHER - type: string description: > @@ -3328,6 +3367,9 @@ components: - UNSATISFIED_REQUESTED_ANALYTICS_TIME: Indicates that the requested event is rejected since the analytics information is not ready when the time indicated by the "timeAnaNeeded" attribute (as provided during the creation or modification of subscription) is reached. + - NO_ROAMING_SUPPORT: Indicates that the request shall be rejected because roaming analytics + or data are required and the NWDAF neither supports roaming exchange capabilitiy nor can + it forward the request to another NWDAF. - OTHER: Indicates the requested analysis information for the event is rejected due to other reasons. @@ -3670,7 +3712,6 @@ components: - TOP_HEAVY: Dispersion class as Top_Heavy UE, who's dispersion percentile rating at a location or a slice, is higher than its class threshold. - DispersionOrderingCriterion: anyOf: - type: string @@ -3955,8 +3996,6 @@ components: - TIME_SLOT_START: Indicates the order of time slot start. - E2E_DATA_VOL_TRANS_TIME: The ordering criterion is the E2E data volume transfer time. - - AnalyticsAccuracyIndication: anyOf: - type: string diff --git a/TS29520_Nnwdaf_MLModelMonitor.yaml b/TS29520_Nnwdaf_MLModelMonitor.yaml index 9c47c94..45ce977 100644 --- a/TS29520_Nnwdaf_MLModelMonitor.yaml +++ b/TS29520_Nnwdaf_MLModelMonitor.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Nnwdaf_MLModelMonitor - version: 1.0.0-alpha.1 + version: 1.0.0-alpha.2 description: | Nnwdaf_MLModelMonitor API Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.520 V18.4.0; 5G System; Network Data Analytics Services. + description: 3GPP TS 29.520 V18.5.0; 5G System; Network Data Analytics Services. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.520/ servers: @@ -403,8 +403,12 @@ components: $ref: '#/components/schemas/AnalyticsFeedback' minItems: 1 description: The analytics feedback information. - validPeriod: - $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + accuMeetInd: + type: boolean + description: > + Set to "true" to indicate that the analytics accuracy of the ML model meet the + requirement of accuracy for the ML model. Otherwise, default value is "false" if + omitted. required: - notifCorrId anyOf: @@ -429,6 +433,10 @@ components: $ref: 'TS29575_Nadrf_DataManagement.yaml#/components/schemas/DataSetTag' modelMetric: $ref: 'TS29520_Nnwdaf_MLModelProvision.yaml#/components/schemas/MLModelMetric' + mlModelAcc: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + monitorInterval: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' required: - modelId diff --git a/TS29520_Nnwdaf_MLModelProvision.yaml b/TS29520_Nnwdaf_MLModelProvision.yaml index 43cbc8e..f114a58 100644 --- a/TS29520_Nnwdaf_MLModelProvision.yaml +++ b/TS29520_Nnwdaf_MLModelProvision.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Nnwdaf_MLModelProvision - version: 1.1.0-alpha.5 + version: 1.1.0-alpha.6 description: | Nnwdaf_MLModelProvision API Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.520 V18.4.0; 5G System; Network Data Analytics Services. + description: 3GPP TS 29.520 V18.5.0; 5G System; Network Data Analytics Services. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.520/ servers: @@ -358,6 +358,8 @@ components: are not standardized. inferDataForModel: $ref: '#/components/schemas/InferenceDataForModelTrain' + modelId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' required: - mLEvent - mLEventFilter @@ -408,6 +410,8 @@ components: $ref: '#/components/schemas/AdditionalMLModelInformation' minItems: 1 description: Contains the additional ML Model Information besides the ML Model Address + modelUniqueId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' allOf: - required: [event] - oneOf: @@ -490,6 +494,11 @@ components: $ref: '#/components/schemas/MLModelMetric' accMLModel: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + oneOf: + - required: [mLFileAddr] + - required: [mLModelAdrf] + required: + - modelUniqueId MLModelAdrf: diff --git a/TS29521_Nbsf_Management.yaml b/TS29521_Nbsf_Management.yaml index 0f8c4d5..3ec4031 100644 --- a/TS29521_Nbsf_Management.yaml +++ b/TS29521_Nbsf_Management.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.4.0-alpha.3 + version: 1.4.0-alpha.4 title: Nbsf_Management description: | Binding Support Management Service API. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.521 V18.2.0; 5G System; Binding Support Management Service. + description: 3GPP TS 29.521 V18.4.0; 5G System; Binding Support Management Service. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.521/' servers: @@ -1016,8 +1016,6 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/DiameterIdentity' pcfDiamRealm: $ref: 'TS29571_CommonData.yaml#/components/schemas/DiameterIdentity' - snssai: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' ParameterCombination: description: > diff --git a/TS29522_ASTI.yaml b/TS29522_ASTI.yaml index 28b2bce..a3b3f3c 100644 --- a/TS29522_ASTI.yaml +++ b/TS29522_ASTI.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-asti - version: 1.1.0-alpha.2 + version: 1.1.0-alpha.3 description: | API for ASTI. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -135,7 +135,7 @@ paths: content: application/json: schema: - $ref: 'TS29565_Ntsctsf_ASTI.yaml#/components/schemas/AstiConfigNotification' + $ref: '#/components/schemas/AstiConfigNotification' responses: '204': description: No Content, Notification was succesfull @@ -401,12 +401,51 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' astiNotifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + astiNotifId: + type: string + description: Notification correlation identifier. required: - asTimeDisParam oneOf: - required: [gpsis] - required: [interGrpId] + AstiConfigNotification: + description: > + Contains the report of a change in the 5G Access Stratum Time Distribution + parameters applied to the UE(s). + type: object + properties: + astiNotifId: + type: string + description: > + It is used to set the value of Notification Correlation ID in the + corresponding notification + stateConfigs: + type: array + items: + $ref: '#/components/schemas/AstiConfigStateNotification' + minItems: 1 + description: > + It contains the reported event(s) and event information. + required: + - astiNotifId + - stateConfigs + + AstiConfigStateNotification: + description: > + Contains the report of a change in the 5G Access Stratum Time Distribution + parameters applied to a UE. + type: object + properties: + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + event: + $ref: 'TS29565_Ntsctsf_ASTI.yaml#/components/schemas/AstiEvent' + required: + - event + - gpsi + StatusRequestData: description: > Contains the parameters for retrieval of the status of the access stratum time distribution diff --git a/TS29522_AnalyticsExposure.yaml b/TS29522_AnalyticsExposure.yaml index f7e4d58..500cad4 100644 --- a/TS29522_AnalyticsExposure.yaml +++ b/TS29522_AnalyticsExposure.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-analyticsexposure - version: 1.2.0-alpha.5 + version: 1.2.0-alpha.6 description: | API for Analytics Exposure. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -561,6 +561,11 @@ components: resume the consumption of the analytics. Default value is "false" if omitted. accuInfo: $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/AccuracyInfo' + nsiLoadLevelData: + type: array + items: + $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/NsiLoadLevelInfo' + minItems: 1 required: - analyEvent - timeStamp @@ -975,6 +980,11 @@ components: are not standardized. accuReq: $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/AccuracyReq' + relProxReqs: + type: array + items: + $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/RelProxReq' + minItems: 1 AnalyticsData: description: Represents analytics data. @@ -1053,6 +1063,11 @@ components: minItems: 1 accuInfo: $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/AccuracyInfo' + relProxInfos: + type: array + items: + $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/RelProxInfo' + minItems: 1 suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: @@ -1232,7 +1247,7 @@ components: - MOVEMENT_BEHAVIOUR - RELATIVE_PROXIMITY - WLAN_PERFORMANCE - - NSI_LOAD_LEVEL + - NS_LOAD_LEVEL - type: string description: > This string provides forward-compatibility with future @@ -1265,8 +1280,8 @@ components: Relative Proximity. - WLAN_PERFORMANCE: Indicates that the event subscribed is the Wlan Performance information. - - NSI_LOAD_LEVEL: Indicates that the event subscribed is load level information of Network - Slice and the optionally associated Network Slice Instance. + - NS_LOAD_LEVEL: Indicates that the event subscribed is load level information of Network + Slice. AnalyticsFailureCode: anyOf: diff --git a/TS29522_DNAIMapping.yaml b/TS29522_DNAIMapping.yaml index d86d4a2..a9a698d 100644 --- a/TS29522_DNAIMapping.yaml +++ b/TS29522_DNAIMapping.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-dnaimapping - version: 1.0.0-alpha.3 + version: 1.0.0-alpha.4 description: | API for DNAI Mapping. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -279,8 +279,12 @@ components: IP address(es) of the EASs in the Local part of the DN or the IP address ranges(IPv4 subnetwork(s) and/or IPv6 prefix(es) of the Local part of the DN where the EAS is deployed. - fqdn: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Fqdn' + fqdns: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Fqdn' + minItems: 1 + description: FQDN(s) where the EAS(s) is/are deployed. dnn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' snssai: @@ -288,7 +292,11 @@ components: eventReq: $ref: 'TS29523_Npcf_EventExposure.yaml#/components/schemas/ReportingInformation' immReport: - $ref: '#/components/schemas/DnaiMapUpdateNotif' + type: array + items: + $ref: 'TS29519_Application_Data.yaml#/components/schemas/DnaiEasInfo' + minItems: 1 + description: DNAI EAS mapping information. notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' notifCorrId: diff --git a/TS29522_ECSAddress.yaml b/TS29522_ECSAddress.yaml index f3cf76b..0d5e228 100644 --- a/TS29522_ECSAddress.yaml +++ b/TS29522_ECSAddress.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-ecs-address - version: 1.0.0-alpha.1 + version: 1.0.0-alpha.2 description: | API for AF provisioned ECS Address Configuration Information. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -362,8 +362,14 @@ components: $ref: 'TS29522_AKMA.yaml#/components/schemas/AfId' minItems: 1 description: AF identifiers to be used as deletion criterion. + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' ecsAddrInfo: $ref: '#/components/schemas/EcsAddrInfo' anyOf: - required: [afIds] + - required: [dnn] + - required: [snssai] - required: [ecsAddrInfo] diff --git a/TS29522_EcsAddressProvision.yaml b/TS29522_EcsAddressProvision.yaml index f126fbe..5140033 100644 --- a/TS29522_EcsAddressProvision.yaml +++ b/TS29522_EcsAddressProvision.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-ecs-address-provision - version: 1.1.0-alpha.2 + version: 1.1.0-alpha.3 description: | API for ECS Address Provisioning. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -298,6 +298,8 @@ components: $ref: 'TS29122_CommonData.yaml#/components/schemas/Link' ecsServerAddr: $ref: 'TS29571_CommonData.yaml#/components/schemas/EcsServerAddr' + mtcProviderId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation' spatialValidityCond: $ref: 'TS29571_CommonData.yaml#/components/schemas/SpatialValidityCond' tgtUe: diff --git a/TS29522_GroupParametersProvisioning.yaml b/TS29522_GroupParametersProvisioning.yaml index b3606aa..aa60868 100644 --- a/TS29522_GroupParametersProvisioning.yaml +++ b/TS29522_GroupParametersProvisioning.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-grp-pp - version: 1.0.0-alpha.1 + version: 1.0.0-alpha.2 description: | API for Group Parameters Provisioning. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.3.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' servers: @@ -322,6 +322,8 @@ components: properties: afId: type: string + mtcProviderId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation' dnnSnssaiGrpData: $ref: '#/components/schemas/DnnSnssaiGrpData' suppFeat: diff --git a/TS29522_MBSGroupMsgDelivery.yaml b/TS29522_MBSGroupMsgDelivery.yaml index 1d269c7..5aaf487 100644 --- a/TS29522_MBSGroupMsgDelivery.yaml +++ b/TS29522_MBSGroupMsgDelivery.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-mbs-group-msg - version: 1.0.0-alpha.4 + version: 1.0.0-alpha.5 description: | API for MBS Group Message Delivery. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -41,6 +41,7 @@ paths: type: array items: $ref: '#/components/schemas/MbsGroupMsgDel' + minItems: 0 '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -225,8 +226,8 @@ paths: $ref: '#/components/schemas/MbsGroupMsgDel' '204': description: > - No Content. Successful case. The MBS Group Message Delivery is - successfully modified and no content is returned in the response body. + No Content. Successful case. The MBS Group Message Delivery is successfully + modified and no content is returned in the response body. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -303,15 +304,15 @@ components: properties: afId: type: string - externalGroupId: + extGroupId: $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalGroupId' - groupMsgDelPayload: + payload: $ref: 'TS29122_CommonData.yaml#/components/schemas/Bytes' mbsServArea: $ref: '#/components/schemas/MbsServArea' startTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' - stopTime: + endTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' @@ -321,31 +322,30 @@ components: Indicates the status of Group Message Delivery. true indicates a successful delivery. false indicates a failed delivery. - The default value if omitted is true. - mbsUserServiceAnmt: + mbsUserServAnmt: $ref: 'TS26517_MBSUserServiceAnnouncement.yaml#/components/schemas/UserServiceDescription' servAreaWithoutMbs: $ref: '#/components/schemas/MbsServArea' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - externalGroupId + - extGroupId - mbsServArea - startTime - - stopTime + - endTime - notifUri MbsGroupMsgDelPatch: description: Represents the requested modifications to an existing MBS Group Message Delivery. type: object properties: - groupMsgDelPayload: + gpayload: $ref: 'TS29122_CommonData.yaml#/components/schemas/Bytes' mbsServArea: $ref: '#/components/schemas/MbsServArea' startTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' - stopTime: + endTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' diff --git a/TS29522_MBSSession.yaml b/TS29522_MBSSession.yaml index 4b73f86..d777b6d 100644 --- a/TS29522_MBSSession.yaml +++ b/TS29522_MBSSession.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-mbs-session - version: 1.2.0-alpha.2 + version: 1.2.0-alpha.3 description: | API for MBS Session Management. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' servers: @@ -726,6 +726,8 @@ components: properties: afId: type: string + mtcProviderId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation' mbsSessAuthData: $ref: '#/components/schemas/MbsSessAuthData' mbsSessAssistInfo: @@ -765,8 +767,6 @@ components: $ref: '#/components/schemas/MbsSessAuthData' mbsSessAssistInfo: $ref: '#/components/schemas/MbsSessAssistInfo' - suppFeat: - $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' MbsSessAssistInfo: description: > diff --git a/TS29522_MemberUESelectionAssistance.yaml b/TS29522_MemberUESelectionAssistance.yaml index 343ae5a..f531488 100644 --- a/TS29522_MemberUESelectionAssistance.yaml +++ b/TS29522_MemberUESelectionAssistance.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-musa - version: 1.0.0-alpha.2 + version: 1.0.0-alpha.3 description: | API for Member UE Selection Assistance. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' servers: @@ -175,11 +175,12 @@ paths: type: string get: summary: Read an active subscription identified by the subscriptionId. + operationId: ReadSubscription tags: - Individual Member UE Selection Assistance Subscription responses: '200': - description: OK (Successful get the active subscription) + description: OK (Successful get the active subscription). content: application/json: schema: @@ -206,8 +207,10 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + put: summary: Update/Replace an existing subscription resource. + operationId: UpdateSubscription tags: - Individual Member UE Selection Assistance Subscription requestBody: @@ -219,13 +222,13 @@ paths: $ref: '#/components/schemas/MemUeSelectAssistSubsc' responses: '200': - description: OK (Successful update of the subscription) + description: OK (Successful update of the subscription). content: application/json: schema: $ref: '#/components/schemas/MemUeSelectAssistSubsc' '204': - description: No Content + description: No Content. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -252,8 +255,57 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Modifyan existing subscription resource + operationId: ModifySubscription + tags: + - Individual Traffic Influence Subscription + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/MemUeSelectAssistSubscPatch' + responses: + '200': + description: OK. The subscription was modified successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/MemUeSelectAssistSubsc' + '204': + description: No Content. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + delete: summary: Delete an existing subscription. + operationId: DeleteSubscription tags: - Individual Member UE Selection Assistance Subscription responses: @@ -292,12 +344,24 @@ components: description: Represents an Member UE Selection Assistance Subscription. type: object properties: - tgtUes: + afId: + type: string + description: The AF Identifier. + tgtUeIds: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' minItems: 1 - description: Identifies the list of UEs for Member Selection Assistance Reporting. + description: > + Identifies the GPSIs of a list of UEs for Member UE Selection Assistance Reporting. + tgtUeIps: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr' + minItems: 1 + description: > + Identifies the IP addresses of a list of UEs for Member UE Selection Assistance + Reporting. notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' notifId: @@ -359,12 +423,20 @@ components: $ref: '#/components/schemas/DnnFilterCriteria' minItems: 1 description: The DNN filtering criteria for Member UE selection. + memUpdatePeriod: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' + maxUeNum: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + timeWin: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - tgtUes - notifUri - notifId + oneOf: + - required: [tgtUeIds] + - required: [tgtUeIps] anyOf: - required: [qosFilters] - required: [accRatTypeFilters] @@ -441,10 +513,17 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' dataVolTransTime: $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/DataVolumeTransferTime' + geoDistrInfos: + type: array + items: + $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/GeoDistributionInfo' + minItems: 1 locationArea: $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' - timeWin: - $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + numDataTrans: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + timeInterval: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' UeLocFilterCriteria: description: The UE location filtering criteria for Member UE selection. @@ -463,10 +542,6 @@ components: $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/NwdafEvent' loc: $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' - startTs: - $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' - endTs: - $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' UeDirectionFilterCriteria: description: The UE direction filtering criteria for Member UE selection. @@ -509,8 +584,6 @@ components: $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' contribWeightThr: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - timeWin: - $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' expTypes: type: array items: @@ -567,15 +640,94 @@ components: description: Identifies the list of candidate UEs information. type: object properties: - candiUes: + candUeIds: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' minItems: 1 + candUeIps: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr' + minItems: 1 remdTimeWin: $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' - required: - - candiUes + oneOf: + - required: [candUeIds] + - required: [candUeIps] + + MemUeSelectAssistSubscPatch: + description: Represents an Member UE Selection Assistance Subscription. + type: object + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + notifId: + type: string + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + qosFilters: + type: array + items: + $ref: '#/components/schemas/QoSFilterCriteria' + minItems: 1 + description: The QoS filtering criteria for Member UE selection. + accRatTypeFilters: + type: array + items: + $ref: '#/components/schemas/AccessRatTypeFilterCriteria' + minItems: 1 + description: The Access types and Rat types filtering criteria for Member UE selection. + e2eTransTimeFilters: + type: array + items: + $ref: '#/components/schemas/E2ETransTimeFilterCriteria' + minItems: 1 + description: > + The End-to-end data volume transfer time filtering criteria for Member UE selection. + ueLocFilters: + type: array + items: + $ref: '#/components/schemas/UeLocFilterCriteria' + minItems: 1 + description: The UE location filtering criteria for Member UE selection. + ueHisLocFilters: + type: array + items: + $ref: '#/components/schemas/UeHisLocFilterCriteria' + minItems: 1 + description: The UE historical location filtering criteria for Member UE selection. + ueDirFilters: + type: array + items: + $ref: '#/components/schemas/UeDirectionFilterCriteria' + minItems: 1 + description: The UE direction filtering criteria for Member UE selection. + ueDistanceFilters: + type: array + items: + $ref: '#/components/schemas/UeDistanceFilterCriteria' + minItems: 1 + description: The UE distance filtering criteria for Member UE selection. + serviceExpFilters: + type: array + items: + $ref: '#/components/schemas/ServiceExpFilterCriteria' + minItems: 1 + description: The Service Experience filtering criteria for Member UE selection. + dnnFilters: + type: array + items: + $ref: '#/components/schemas/DnnFilterCriteria' + minItems: 1 + description: The DNN filtering criteria for Member UE selection. + memUpdatePeriod: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' + maxUeNum: + $ref: 'TS29571_CommonData.yaml#/components/schemas/UintegerRm' + timeWin: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + nullable: true FilterCriterionType: anyOf: diff --git a/TS29522_ServiceParameter.yaml b/TS29522_ServiceParameter.yaml index d5f4469..0a9a133 100644 --- a/TS29522_ServiceParameter.yaml +++ b/TS29522_ServiceParameter.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-service-parameter - version: 1.2.0-alpha.5 + version: 1.2.0-alpha.6 description: | API for AF service paramter - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -456,6 +456,8 @@ components: $ref: '#/components/schemas/ParamForProSeEndUe' paramForRangingSlPos: $ref: '#/components/schemas/ParamForRangingSlPos' + mappingInfo: + $ref: '#/components/schemas/MappingInfo' urspGuidance: type: array items: @@ -499,6 +501,8 @@ components: $ref: '#/components/schemas/ParamForProSeEndUeRm' paramForRangingSlPos: $ref: '#/components/schemas/ParamForRangingSlPosRm' + mappingInfo: + $ref: '#/components/schemas/MappingInfoRm' urspGuidance: type: array items: @@ -856,6 +860,34 @@ components: plmnId: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnIdNid' + MappingInfo: + description: > + Contains the mapping information between the Application Layer ID and the GPSI. + type: object + properties: + appLayerId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + required: + - appLayerId + - gpsi + + MappingInfoRm: + description: > + This data type is defined in the same way as the MappingInfo data type but with the OpenAPI + nullable property set to true. + type: object + properties: + appLayerId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + nullable: true + required: + - appLayerId + - gpsi + Failure: oneOf: - type: string diff --git a/TS29522_SliceParamProvision.yaml b/TS29522_SliceParamProvision.yaml index fe08645..2b85683 100644 --- a/TS29522_SliceParamProvision.yaml +++ b/TS29522_SliceParamProvision.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: Slice Parameters Provisionings - version: 1.0.0-alpha.2 + version: 1.0.0-alpha.3 description: | API for Slice Parameters Provisionings. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -332,6 +332,8 @@ components: properties: afId: type: string + mtcProviderId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation' sliceUsgCtrlData: type: object additionalProperties: diff --git a/TS29522_TimeSyncExposure.yaml b/TS29522_TimeSyncExposure.yaml index 0d0c1b3..6d80840 100644 --- a/TS29522_TimeSyncExposure.yaml +++ b/TS29522_TimeSyncExposure.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 3gpp-time-sync-exposure - version: 1.1.0-alpha.5 + version: 1.1.0-alpha.6 description: | API for time synchronization exposure. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.522 V18.4.0; 5G System; Network Exposure Function Northbound APIs. + 3GPP TS 29.522 V18.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: @@ -964,6 +964,8 @@ components: to indicate the state of configuration for NW-TT port is active; when PTP port state is in any other case, it is included and set to false to indicate the state of configuration for NW-TT port is inactive. Default value is false. + clkQltIndOfNwtt: + $ref: '#/components/schemas/AcceptanceCriteriaResultIndication' stateOfDstts: description: > Contains the PTP port states of the DS-TT(s). @@ -985,6 +987,8 @@ components: to indicate the state of configuration for DS-TT port is active; when PTP port state is in any other case, it is included and set to false to indicate the state of configuration for DS port is inactive. Default value is false. + clkQltIndOfDstt: + $ref: '#/components/schemas/AcceptanceCriteriaResultIndication' required: - gpsi - state @@ -1055,7 +1059,7 @@ components: description: | Identifies the supported event. Possible values are: - - AVAILABILITY_FOR_TIME_SYNC_SERVICE: The UE is availability for time synchronization + - AVAILABILITY_FOR_TIME_SYNC_SERVICE: 5GS and/or UE availability and capability for time synchronization service. AsTimeResource: diff --git a/TS29525_Npcf_UEPolicyControl.yaml b/TS29525_Npcf_UEPolicyControl.yaml index 7f2669c..d4532fc 100644 --- a/TS29525_Npcf_UEPolicyControl.yaml +++ b/TS29525_Npcf_UEPolicyControl.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.3.0-alpha.5 + version: 1.3.0-alpha.6 title: Npcf_UEPolicyControl description: | UE Policy Control Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.525 V18.4.0; 5G System; UE Policy Control Service. + description: 3GPP TS 29.525 V18.5.0; 5G System; UE Policy Control Service. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.525/' servers: @@ -348,9 +348,7 @@ components: Contains the presence reporting area(s) for which reporting was requested. The praId attribute within the PresenceInfoRm data type is the key of the map. andspDelInd: - type: boolean - description: > - Indication that the updated ANDSP/WLANSP has been successfully delivered to the UE. + $ref: '#/components/schemas/PolicyStatus' andspInd: description: > Indication of UE support of ANDSP. When set to true, it indicates the UE supports ANDSP, @@ -401,6 +399,11 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' accessType: $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' + accessTypes: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' + minItems: 1 pei: $ref: 'TS29571_CommonData.yaml#/components/schemas/Pei' userLoc: @@ -411,6 +414,11 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnIdNid' ratType: $ref: 'TS29571_CommonData.yaml#/components/schemas/RatType' + ratTypes: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RatType' + minItems: 1 groupIds: type: array items: @@ -470,15 +478,15 @@ components: description: > Contains LBO roaming information for DNN and S-NSSAI combination(s). This attribute only applies in roaming and when the AMF is the NF service consumer. + chfInfo: + $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ChargingInformation' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' - rangingSlCapab: - type: boolean - description: > - It indicates whether the PC5 Capability for Ranging/SL is supported by the UE or not. - "true": Indicates that the PC5 Capability for Ranging/SL is supported by the UE. - "false": Indicates that the PC5 Capability for Ranging/SL is not supported by the UE. - Default value when omitted is "false". + rangSlCapab: + type: array + items: + $ref: '#/components/schemas/RangSLCapability' + minItems: 1 required: - notificationUri - suppFeat @@ -591,16 +599,18 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' minItems: 1 - accessStatus: - $ref: '#/components/schemas/AccessStatus' + ratTypes: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RatType' + minItems: 1 suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' - rangingSlCapab: - type: boolean - description: > - It indicates whether the PC5 Capability for Ranging/SL is supported by the UE or not. - "true": Indicates that the PC5 Capability for Ranging/SL is supported by the UE. - "false": Indicates that the PC5 Capability for Ranging/SL is not supported by the UE. + rangSlCapab: + type: array + items: + $ref: '#/components/schemas/RangSLCapability' + minItems: 1 PolicyUpdate: description: > Represents updated policies that the PCF provides in a notification or in the reply to an @@ -635,9 +645,7 @@ components: minProperties: 1 nullable: true andspDelInd: - type: boolean - description: > - Indication that the updated ANDSP/WLANSP has been successfully delivered to the UE. + $ref: '#/components/schemas/PolicyStatus' delivReport: type: object additionalProperties: @@ -746,6 +754,12 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' minItems: 1 + ratTypes: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RatType' + minItems: 1 + UePolicyParameters: description: > Contains the service parameters used to guide the VPLMN-specific URSP rule determination. @@ -881,10 +895,10 @@ components: in roaming scenarios when the NF service consumer is the AMF. - FEAT_RENEG: The NF service consumer notifies that the target AMF is requesting feature re-negotiation. - - URSP_ENF_INFO: The V-PCF has received URSP rule enforcement information for one or more URSP - rules. This trigger applies in roaming scenarios and to the V-PCF. - - ACCESS_TYPE_CH: Access Type change. The registered access type has changed, an access type - is added or an access type is removed. + - URSP_ENF_INFO: The V-PCF has received URSP rule enforcement information for one or more + URSP rules. This trigger applies in roaming scenarios and to the V-PCF. + - ACCESS_TYPE_CH: Access Type change. The registered access type and RAT type + has changed, an access type and RAT type is added or removed. PolicyAssociationReleaseCause: anyOf: @@ -993,39 +1007,54 @@ components: - N3IWF: Non-3gpp Interworking Function. - TNGF: Trusted Non-3gpp Gateway Function. - AccessStatus: + N1N2MessTransferErrorReply: anyOf: - type: string enum: - - ADDITION - - REMOVAL + - UE_NOT_REACHABLE + - UNSPECIFIED - 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: | - Represents whether the type of change is a replacement, addition or removal. + Represents an N1N2 Message Transfer error. Possible values are: - - ADDITION: The type of change is an addition. - - REMOVAL: The type of change is a removal. + - UE_NOT_REACHABLE: The UE is not reachable for paging. + - UNSPECIFIED: Unspecified error. - N1N2MessTransferErrorReply: + RangSLCapability: anyOf: - type: string enum: - - UE_NOT_REACHABLE - - UNSPECIFIED + - PC5_RANGING_SL + - 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: | + Indicates the Ranging and Sidelink Capability. + Possible values are: + - PC5_RANGING_SL: Indicates that the PC5 Capability for Ranging and Sidelink is supported + by the UE. + + PolicyStatus: + anyOf: + - type: string + enum: + - CONFIGURED + - NOT_CONFIGURED - 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: | - Represents an N1N2 Message Transfer error. + Represents the configuration status of a UE Policy in the UE. Possible values are: - - UE_NOT_REACHABLE: The UE is not reachable for paging. - - UNSPECIFIED: Unspecified error. + - CONFIGURED: The UE Policy is configured in the UE. + - NOT_CONFIGURED: The UE Policy is not configured in the UE. # UePolicyTransferFailureCause: diff --git a/TS29531_Nnssf_NSSAIAvailability.yaml b/TS29531_Nnssf_NSSAIAvailability.yaml index dc62a99..203eb8b 100644 --- a/TS29531_Nnssf_NSSAIAvailability.yaml +++ b/TS29531_Nnssf_NSSAIAvailability.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.5' + version: '1.3.0-alpha.6' title: 'NSSF NSSAI Availability' description: | NSSF NSSAI Availability Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. security: - {} @@ -18,7 +18,7 @@ servers: default: https://example.com description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501 externalDocs: - description: 3GPP TS 29.531 V18.5.0; 5G System; Network Slice Selection Services; Stage 3 + description: 3GPP TS 29.531 V18.6.0; 5G System; Network Slice Selection Services; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.531/ paths: /nssai-availability/{nfId}: @@ -359,7 +359,8 @@ paths: responses: '204': - description: No Content (Successful deletion of subscription for NSSAI Availability notification) + description: > + No Content (Successful deletion of subscription for NSSAI Availability notification) '307': $ref: 'TS29571_CommonData.yaml#/components/responses/307' '308': @@ -403,7 +404,9 @@ paths: schema: type: string requestBody: - description: JSON Patch instructions to update at the NSSF, the NSSAI availability notification subscription + description: > + JSON Patch instructions to update at the NSSF, + the NSSAI availability notification subscription required: true content: application/json-patch+json:: @@ -503,6 +506,11 @@ components: nnssf-nssaiavailability: Access to the Nnssf_NSSAIAvailability API schemas: + +# +# STRUCTURED TYPES +# + NssaiAvailabilityInfo: description: This contains the Nssai availability information requested by the AMF type: object @@ -663,6 +671,11 @@ components: $ref: '#/components/schemas/SnssaiReplacementSubscribeInfo' nsiunSubscribeInfo: $ref: '#/components/schemas/NsiUnavailabilitySubscribeInfo' + validityTimeSubList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + minItems: 1 NssfEventSubscriptionCreatedData: description: This contains the information for created event subscription @@ -708,9 +721,18 @@ components: items: $ref: 'TS29531_Nnssf_NSSelection.yaml#/components/schemas/NsiId' minItems: 1 + nssaiValidityTimeInfo: + description: > + A map(list of key-value pairs where single Nssai serves as key) + of the current validity time + type: object + additionalProperties: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' SnssaiReplacementSubscribeInfo: - description: Present if the NF service consumer subscribes to events related to Network Slice Replacement. + description: > + Present if the NF service consumer subscribes to events related to + Network Slice Replacement. type: object properties: snssaiToSubscribe: @@ -729,7 +751,9 @@ components: - nfId NsiUnavailabilitySubscribeInfo: - description: Present if the NF service consumer subscribes to events related to Network Slice Instance Replacement. + description: > + Present if the NF service consumer subscribes to events related to + Network Slice Instance Replacement. type: object properties: nsiToSubscribe: @@ -741,6 +765,24 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + PatchDocument: + description: > + This contains the JSON Patch instructions for updating the Nssai availability data + information at the NSSF + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PatchItem' + minItems: 1 +# +# SIMPLE TYPES +# + + + +# +# ENUMS +# + NssfEventType: description: This contains the event for the subscription anyOf: @@ -749,10 +791,5 @@ components: - SNSSAI_STATUS_CHANGE_REPORT - SNSSAI_REPLACEMENT_REPORT - NSI_UNAVAILABILITY_REPORT + - SNSSAI_VALIDITY_TIME_REPORT - type: string - PatchDocument: - description: This contains the JSON Patch instructions for updating the Nssai availability data information at the NSSF - type: array - items: - $ref: 'TS29571_CommonData.yaml#/components/schemas/PatchItem' - minItems: 1 diff --git a/TS29531_Nnssf_NSSelection.yaml b/TS29531_Nnssf_NSSelection.yaml index 9636722..9eb8eeb 100644 --- a/TS29531_Nnssf_NSSelection.yaml +++ b/TS29531_Nnssf_NSSelection.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: '2.3.0-alpha.2' + version: '2.3.0-alpha.3' title: 'NSSF NS Selection' description: | NSSF Network Slice Selection Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. security: - {} @@ -18,7 +18,7 @@ servers: default: https://example.com description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501 externalDocs: - description: 3GPP TS 29.531 V18.2.0; 5G System; Network Slice Selection Services; Stage 3 + description: 3GPP TS 29.531 V18.6.0; 5G System; Network Slice Selection Services; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.531/ paths: /network-slice-information: @@ -49,7 +49,8 @@ paths: $ref: '#/components/schemas/SliceInfoForRegistration' - name: slice-info-request-for-pdu-session in: query - description: Requested network slice information during PDU session establishment procedure + description: > + Requested network slice information during PDU session establishment procedure content: application/json: schema: @@ -125,6 +126,11 @@ components: scopes: nnssf-nsselection: Access to the Nnssf_NSSelection API schemas: + +# +# STRUCTURED TYPES +# + AuthorizedNetworkSliceInfo: description: Contains the authorized network slice information type: object @@ -269,7 +275,8 @@ components: minProperties: 1 MappingOfSnssai: - description: Contains the mapping of S-NSSAI in the serving network and the value of the home network + description: > + Contains the mapping of S-NSSAI in the serving network and the value of the home network type: object required: - servingSnssai @@ -323,7 +330,8 @@ components: default: false SliceInfoForPDUSession: - description: Contains the slice information requested during PDU Session establishment procedure + description: > + Contains the slice information requested during PDU Session establishment procedure type: object required: - sNssai @@ -337,7 +345,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' SliceInfoForUEConfigurationUpdate: - description: Contains the slice information requested during UE configuration update procedure + description: > + Contains the slice information requested during UE configuration update procedure type: object properties: subscribedNssai: @@ -351,6 +360,7 @@ components: $ref: '#/components/schemas/AllowedNssai' defaultConfiguredSnssaiInd: type: boolean + default: false requestedNssai: type: array items: @@ -375,7 +385,8 @@ components: default: false ConfiguredSnssai: - description: Contains the configured S-NSSAI(s) authorized by the NSSF in the serving PLMN and optional mapped home S-NSSAI + description: > + Contains the configured S-NSSAI(s) authorized by the NSSF in the serving PLMN and optional mapped home S-NSSAI type: object required: - configuredSnssai @@ -386,7 +397,9 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' NsagInfo: - description: Contains the association of NSAGs and S-NSSAI(s) along with the TA(s) within which the association is valid. + description: > + Contains the association of NSAGs and S-NSSAI(s) along with the TA(s) within which + the association is valid. type: object required: - nsagIds @@ -413,6 +426,18 @@ components: $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/TaiRange' minItems: 1 +# +# SIMPLE TYPES +# + + NsiId: + description: Contains the Identifier of the selected Network Slice instance + type: string + +# +# ENUMS +# + RoamingIndication: description: Contains the indication on roaming anyOf: @@ -422,6 +447,3 @@ components: - LOCAL_BREAKOUT - HOME_ROUTED_ROAMING - type: string - NsiId: - description: Contains the Identifier of the selected Network Slice instance - type: string diff --git a/TS29532_Nmbsmf_MBSSession.yaml b/TS29532_Nmbsmf_MBSSession.yaml index 20f98a3..b5a60d9 100644 --- a/TS29532_Nmbsmf_MBSSession.yaml +++ b/TS29532_Nmbsmf_MBSSession.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: 'Nmbsmf-MBSSession' - version: 1.2.0-alpha.2 + version: 1.2.0-alpha.3 description: | MB-SMF MBSSession Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.532 V18.3.0; 5G System; 5G Multicast-Broadcast Session Management Services; + 3GPP TS 29.532 V18.4.0; 5G System; 5G Multicast-Broadcast Session Management Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.532/ diff --git a/TS29536_Nnsacf_NSAC.yaml b/TS29536_Nnsacf_NSAC.yaml index 26e27a0..bc0c7e7 100644 --- a/TS29536_Nnsacf_NSAC.yaml +++ b/TS29536_Nnsacf_NSAC.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Nnsacf_NSAC - version: 1.1.0-alpha.4 + version: 1.1.0-alpha.5 description: | Nnsacf_NSAC Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.536 V18.4.0; 5G System; Network Slice Admission Control Services; Stage 3. + description: 3GPP TS 29.536 V18.5.0; 5G System; Network Slice Admission Control Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.536/ servers: @@ -365,6 +365,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' plmnId: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId' + plmnIdNid: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnIdNid' ueRegInd: type: boolean enum: @@ -386,6 +388,8 @@ components: $ref: '#/components/schemas/AcuFailureReason' plmnId: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId' + plmnIdNid: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnIdNid' pduSessionId: $ref: 'TS29571_CommonData.yaml#/components/schemas/PduSessionId' required: diff --git a/TS29536_Nnsacf_SliceEventExposure.yaml b/TS29536_Nnsacf_SliceEventExposure.yaml index 7c956ad..0c2cca2 100644 --- a/TS29536_Nnsacf_SliceEventExposure.yaml +++ b/TS29536_Nnsacf_SliceEventExposure.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Nnsacf_SliceEventExposure - version: 1.1.0-alpha.4 + version: 1.1.0-alpha.5 description: | Nnsacf_SliceEventExposure Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.536 V18.4.0; 5G System; Network Slice Admission Control Services; Stage 3. + description: 3GPP TS 29.536 V18.5.0; 5G System; Network Slice Admission Control Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.536/ servers: diff --git a/TS29538_MSGG_BGDelivery.yaml b/TS29538_MSGG_BGDelivery.yaml index 489ee23..6dbd847 100644 --- a/TS29538_MSGG_BGDelivery.yaml +++ b/TS29538_MSGG_BGDelivery.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: MSGG_BGDelivery - version: 1.0.0-alpha.2 + version: 1.0.0-alpha.3 description: | API for Broadcast Message Delivery Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.538 V18.4.0; Enabling MSGin5G Service; Application Programming Interfaces (API) + 3GPP TS 29.538 V18.5.0; Enabling MSGin5G Service; Application Programming Interfaces (API) specification; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.538/ @@ -83,7 +83,6 @@ components: type: object required: - oriAddr - - destAddr - msgId properties: oriAddr: diff --git a/TS29538_MSGS_TopiclistEvent.yaml b/TS29538_MSGS_TopiclistEvent.yaml new file mode 100644 index 0000000..279c6ed --- /dev/null +++ b/TS29538_MSGS_TopiclistEvent.yaml @@ -0,0 +1,405 @@ +openapi: 3.0.0 + +info: + title: MSGS_TopiclistEvent + version: 1.0.0-alpha.1 + description: | + API for Topic Messaging Event Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.538 V18.4.0; Enabling MSGin5G Service; Application Programming Interfaces (API) + specification; Stage 3 + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.538/ + +servers: + - url: '{apiRoot}/msgs-topiclistevent/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501 + +security: + - {} + - oAuth2ClientCredentials: + - msgs-topiclistevent + +paths: + /topiclist-subscriptions: + post: + summary: subscribe to Messaging Topic list on a MSGin5G Server + tags: + - Topic List Subscription + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/TopicListSubscription' + callbacks: + MessagingTopicListNotification: + '{request.body#/notificationURI}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/TopicListNotification' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: Topic list on the MSGin5G Server is successfully subscribed + content: + application/json: + schema: + $ref: '#/components/schemas/TopicListSubscriptionAck' + headers: + Location: + description: 'Contains the URI of the newly created resource' + required: true + schema: + type: string + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + /topiclist-subscriptions/{subscriptionId}: + post: + summary: Unsubscribe to Messaging Topic list on a MSGin5G Server + tags: + - Topic List Unsubscriptionn + parameters: + - name: subscriptionId + in: path + description: Topic list subscription Id + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/TopicListUnsubscription' + responses: + '200': + description: The individual Topic list unsubscription is successfully handled with the subscription not deleted. + content: + application/json: + schema: + $ref: '#/components/schemas/TopicListUnsubscriptionAck' + '204': + description: > + No Content. The individual MSGin5G Server Messaging Topic list subscription matching the subscription Id is successfully deleted. + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + /request-topic-subscription: + post: + summary: subscribe to Messaging Topic on a MSGin5G Server + tags: + - Messaging Topic Subscription + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/TopicSubscription' + responses: + '200': + description: The Messaging Topic subscription is created successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/TopicSubscriptionAck' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + /request-topic-unsubscription: + post: + summary: unsubscribe to Messaging Topic on a MSGin5G Server + tags: + - Messaging Topic Unsubscription + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/TopicUnsubscription' + responses: + '204': + description: > + No Content. The Messaging Topic subscription is removed successfully. + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '503': + $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: +# +# STRUCTURED DATA TYPES +# + TopicListSubscription: + description: Messaging Topic list subscription data + type: object + required: + - oriAddr + - destAddr + - notificationURI + properties: + oriAddr: + $ref: 'TS29538_MSGG_L3GDelivery.yaml#/components/schemas/Address' + destAddr: + $ref: 'TS29538_MSGG_L3GDelivery.yaml#/components/schemas/Address' + notificationURI: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' + secCred: + type: string + exprTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + + TopicListUnsubscription: + description: Messaging Topic list unsubscription data + type: object + required: + - oriAddr + - destAddr + properties: + oriAddr: + $ref: 'TS29538_MSGG_L3GDelivery.yaml#/components/schemas/Address' + destAddr: + $ref: 'TS29538_MSGG_L3GDelivery.yaml#/components/schemas/Address' + secCred: + type: string + + TopicListSubscriptionAck: + description: Response of Messaging Topic list subscription + type: object + required: + - subStat + properties: + subStat: + type: string + exprTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + + TopicListUnsubscriptionAck: + description: Response of Messaging Topic list unsubscription + type: object + required: + - subStat + properties: + subStat: + type: string + + TopicSubscription: + description: Messaging Topic subscription data + type: object + required: + - oriAddr + - msgTopics + properties: + oriAddr: + $ref: 'TS29538_MSGG_L3GDelivery.yaml#/components/schemas/Address' + msgTopics: + type: array + items: + type: string + minItems: 1 + description: A list of Messaging Topics to be subscribed. + secCred: + type: string + exprTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + + TopicSubscriptionAck: + description: Response of Messaging Topic subscription + type: object + required: + - subStat + properties: + subStat: + type: string + exprTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + + TopicUnsubscription: + description: Messaging Topic unsubscription data + type: object + required: + - oriAddr + - msgTopics + properties: + oriAddr: + $ref: 'TS29538_MSGG_L3GDelivery.yaml#/components/schemas/Address' + secCred: + type: string + msgTopics: + type: array + items: + type: string + minItems: 1 + description: A list of Messaging Topics to be unsubscribed. + + TopicListNotification: + description: Messaging Topic list changes notification data + type: object + required: + - msgTopics + properties: + exprTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + msgTopics: + type: array + items: + $ref: '#/components/schemas/MessagingTopic' + minItems: 1 + description: list of Messaging Topics for notification. + + MessagingTopic: + description: Represent Messaging Topic information + type: object + required: + - msgTopic + - updateStat + properties: + msgTopic: + type: string + updateStat: + $ref: '#/components/schemas/UpdateStatus' + +# +# ENUMERATIONS DATA TYPES +# + + UpdateStatus: + anyOf: + - type: string + enum: + - CREATED + - DELETED + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration + and is not used to encode content defined in the present version of this API. + description: | + Represents the Messaging Topic Update status. + Possible values are: + - CREATED: Indicates Topic newly created. + - DELETED: Indicates Topic newly deleted. diff --git a/TS29543_Npcf_PDTQPolicyControl.yaml b/TS29543_Npcf_PDTQPolicyControl.yaml index 943f1a3..3d09d1b 100644 --- a/TS29543_Npcf_PDTQPolicyControl.yaml +++ b/TS29543_Npcf_PDTQPolicyControl.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Npcf_PDTQPolicyControl API - version: 1.0.0-alpha.4 + version: 1.0.0-alpha.6 description: | PCF PDTQ Policy Control service. - © <2023>, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © <2024>, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.543 V1.0.0; 5G System; Data Transfer Policy Control Services; Stage 3. + description: 3GPP TS 29.543 V18.0.0; 5G System; Data Transfer Policy Control Services; Stage 3. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.543/' servers: diff --git a/TS29548_SDD_DDContext.yaml b/TS29548_SDD_DDContext.yaml index 2d1b3aa..edc9b0d 100644 --- a/TS29548_SDD_DDContext.yaml +++ b/TS29548_SDD_DDContext.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: SEALDD Server Data Delivery Context Relocation - version: 1.0.0-alpha.4 + version: 1.0.0-alpha.7 description: | SEALDD Server Data Delivery Context Relocation. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.548 V1.0.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.548 V18.0.0 Service Enabler Architecture Layer for Verticals (SEAL); SEAL Data Delivery (SEALDD) Server Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.548/ @@ -31,8 +31,20 @@ paths: summary: Pull the DD context from the SEALDD Server. operationId: PullDdContext tags: - - DD Context Instances (Collection) + - DD Contexts (Collection) parameters: + - name: sealdd-pol-ind + in: query + required: false + schema: + type: boolean + default: false + description: > + Indicates whether the configured SEALDD Policy(ies), if any, is/are requested and + shall hence be provided in addition to the DD Context. + true indicates that the configured SEALDD Policy(ies) is/are requested. + false indicates that the configured SEALDD Policy(ies) is/are not requested. + The default value when this query parameter is omitted is false. - name: supp-feats in: query description: Contains the list of supported features. @@ -72,7 +84,7 @@ paths: post: summary: Push the DD context to the SEALDD Server. tags: - - DD Context Instances (Collection) + - DD Contexts (Collection) requestBody: description: > Represents the DD context to be pushed to the @@ -174,7 +186,12 @@ components: ddContext: $ref: '#/components/schemas/DdContext' endPoint: - $ref: 'TS29571_CommonData.yaml#/components/schemas/RouteInformation' + $ref: 'TS29548_SDD_Transmission.yaml#/components/schemas/ConnInfo' + policies: + type: array + items: + $ref: 'TS29548_SDD_PolicyConfiguration.yaml#/components/schemas/PolicyConfig' + minItems: 1 suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' @@ -192,7 +209,7 @@ components: type: string description: Contains the identifier of the VAL Server. valServEndPoint: - $ref: 'TS29571_CommonData.yaml#/components/schemas/RouteInformation' + $ref: 'TS29548_SDD_Transmission.yaml#/components/schemas/ConnInfo' ddClientConnInfo: $ref: 'TS29548_SDD_Transmission.yaml#/components/schemas/ConnInfo' ddServConnInfo: @@ -219,9 +236,8 @@ components: valServiceId: type: string description: Contains the identifier of the VAL service. - valTargetUeId: - type: string - description: Contains the identifier of the target VAL UE. + valTargetId: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' valServerConnInfo: $ref: 'TS29548_SDD_Transmission.yaml#/components/schemas/ConnInfo' ddServerConnInfo: @@ -246,4 +262,3 @@ components: # Data types describing alternative data types or combinations of data types: # - diff --git a/TS29548_SDD_DataStorage.yaml b/TS29548_SDD_DataStorage.yaml index b3465a9..8d3d833 100644 --- a/TS29548_SDD_DataStorage.yaml +++ b/TS29548_SDD_DataStorage.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: SEALDD Server Data Storage Service - version: 1.0.0-alpha.2 + version: 1.0.0-alpha.5 description: | SEALDD Server Data Storage Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.548 V1.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.548 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); SEAL Data Delivery (SEALDD) Server Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.548/ @@ -628,7 +628,7 @@ paths: summary: Enables a service consumer to request SEALDD data storage delivery. operationId: DataDeliveryRequest tags: - - SEALDD Data Delivery Request + - SEALDD Data Storage Delivery Request requestBody: required: true content: @@ -667,6 +667,59 @@ paths: default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + /establish-del-conn: + post: + summary: Enables a service consumer to request SEALDD data storage delivery connection establishment. + operationId: EstablishDelConn + tags: + - SEALDD Data Storage Delivery Connection Establishment Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DelConnEstabReq' + responses: + '200': + description: > + OK. The SEALDD Data Storage delivery connection establishment request is successfully + received and processed, and SEALDD Data Storage delivery connection establishment + related information shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/DelConnEstabResp' + '204': + description: > + No Content. The SEALDD Data Storage delivery connection establishment request is + successfully received and processed. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + components: securitySchemes: @@ -789,6 +842,8 @@ components: Represents a SEALDD Data Management and/or Status Information Notification. type: object properties: + storageId: + type: string events: type: array items: @@ -799,6 +854,7 @@ components: mngtStats: $ref: '#/components/schemas/DataMngtStats' required: + - storageId - events anyOf: - required: [accessStats] @@ -856,8 +912,6 @@ components: Represents a SEALDD Data Storage Delivery Subscription. type: object properties: - requestorId: - type: string notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' expTime: @@ -865,7 +919,6 @@ components: suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - requestorId - notifUri DataDelSubscPatch: @@ -910,6 +963,34 @@ components: - required: [data] - required: [storageId] + DelConnEstabReq: + description: > + Represents a SEALDD Data Storage Delivery connection establishment request. + type: object + properties: + targetId: + type: string + ddServerConnInfo: + $ref: 'TS29548_SDD_Transmission.yaml#/components/schemas/ConnInfo' + transProtoc: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/TransportProtocol' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - targetId + + DelConnEstabResp: + description: > + Represents the response to a SEALDD Data Storage Delivery connection establishment request. + type: object + properties: + ddServerConnInfo: + $ref: 'TS29548_SDD_Transmission.yaml#/components/schemas/ConnInfo' + transProtoc: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/TransportProtocol' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + # SIMPLE DATA TYPES # diff --git a/TS29548_SDD_PolicyConfiguration.yaml b/TS29548_SDD_PolicyConfiguration.yaml index 79bca0f..dfcd03c 100644 --- a/TS29548_SDD_PolicyConfiguration.yaml +++ b/TS29548_SDD_PolicyConfiguration.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: SEALDD Server Policy Configuration Service - version: 1.0.0-alpha.3 + version: 1.0.0-alpha.6 description: | SEALDD Server Policy Configuration Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.548 V1.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.548 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); SEAL Data Delivery (SEALDD) Server Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.548/ @@ -275,8 +275,8 @@ components: items: type: string minItems: 1 - valUeId: - type: string + valTargetId: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' sealddPol: $ref: '#/components/schemas/SealddPolicy' expTime: @@ -300,25 +300,42 @@ components: Represents a SEALDD Policy. type: object properties: - qualGuarSets: - type: array - items: - $ref: '#/components/schemas/QualGuarPolicy' - minItems: 1 - qualOptimSets: - type: array - items: - $ref: '#/components/schemas/QualOptimPolicy' - minItems: 1 + qualGuarPol: + $ref: '#/components/schemas/QualGuarPolicy' bdwCtrlSets: type: array items: $ref: '#/components/schemas/BdwCtrlPolicy' minItems: 1 anyOf: - - required: [qualGuarantee] - - required: [qualOptimSets] - - required: [bdwControl] + - required: [qualGuarPol] + - required: [bdwCtrlSets] + + QualGuarPolicy: + description: > + Represents the quality guarantee policy. + type: object + properties: + thresholds: + $ref: '#/components/schemas/QualGuarThresh' + required: + - thresholds + + QualGuarThresh: + description: > + Represents the quality guarantee related thresholds. + type: object + properties: + measId: + type: array + items: + $ref: 'TS29548_SDD_TransmissionQualityMeasurement.yaml#/components/schemas/MeasurementId' + minItems: 1 + measThesh: + $ref: 'TS29548_SDD_TransmissionQualityMeasurement.yaml#/components/schemas/TransQualMeasCriteria' + required: + - measId + - measThesh # SIMPLE DATA TYPES @@ -328,45 +345,6 @@ components: # ENUMERATIONS # - QualGuarPolicy: - anyOf: - - type: string - enum: - - ESTABLISH_REDUNDANT_TRANS_PATH - - REESTABLISH_TRANS_PATH - - SWITCH_TO_BACKUP_TRANS_PATH - - CHANGE_SEALDD_SERVER - - type: string - description: > - This string provides forward-compatibility with future extensions to the enumeration - and is not used to encode content defined in the present version of this API. - description: | - Represents the quality guarantee policy. - Possible values are: - - ESTABLISH_REDUNDANT_TRANS_PATH: Indicates that the quality guarantee action is to - establish a redundant transmission path. - - REESTABLISH_TRANS_PATH: Indicates that the quality guarantee action is to - reestablish the transmission path. - - SWITCH_TO_BACKUP_TRANS_PATH: Indicates that the quality guarantee action is to - switch to the backup transmission path. - - CHANGE_SEALDD_SERVER: Indicates that the quality guarantee action is to change the - connected SEALDD Server. - - QualOptimPolicy: - anyOf: - - type: string - enum: - - BACK_TO_SINGLE_TRANS_PATH - - type: string - description: > - This string provides forward-compatibility with future extensions to the enumeration - and is not used to encode content defined in the present version of this API. - description: | - Represents the quality optimization policy. - Possible values are: - - BACK_TO_SINGLE_TRANS_PATH: Indicates that the quality optimization action is to switch - back to a single transmission path. - BdwCtrlPolicy: anyOf: - type: string @@ -394,4 +372,3 @@ components: # Data types describing alternative data types or combinations of data types: # - diff --git a/TS29548_SDD_Transmission.yaml b/TS29548_SDD_Transmission.yaml index 3b62b49..41c018e 100644 --- a/TS29548_SDD_Transmission.yaml +++ b/TS29548_SDD_Transmission.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: SEALDD Server Data Transmission Service - version: 1.0.0-alpha.4 + version: 1.0.0-alpha.7 description: | SEALDD Server Data Transmission Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.548 V1.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.548 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); SEAL Data Delivery (SEALDD) Server Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.548/ @@ -177,6 +177,185 @@ paths: default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + /subscriptions/{subscriptionId}: + parameters: + - name: subscriptionId + in: path + description: > + Represents the identifier of the Individual Connection Status Subscription resource. + required: true + schema: + type: string + + get: + summary: Retrieve an existing Individual Connection Status Subscription resource. + operationId: GetIndConnStatusSubsc + tags: + - Individual Connection Status Subscription (Document) + responses: + '200': + description: > + OK. The requested Individual Connection Status Subscription resource shall be returned. + content: + application/json: + schema: + $ref: '#/components/schemas/ConnStatusSubsc' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Request the update of an existing Individual Connection Status Subscription resource. + operationId: UpdateIndConnStatusSubsc + tags: + - Individual Connection Status Subscription (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/ConnStatusSubsc' + responses: + '200': + description: > + OK. The Individual Connection Status Subscription resource is successfully updated and + a representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/ConnStatusSubsc' + '204': + description: > + No Content. The Individual Connection Status Subscription resource is successfully + updated and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the modification of an existing Individual Connection Status Subscription resource. + operationId: ModifyIndConnStatusSubsc + tags: + - Individual Connection Status Subscription (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/ConnStatusSubscPatch' + responses: + '200': + description: > + OK. The Individual Connection Status Subscription resource is successfully modified + and a representation of the updated resource shall be returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/ConnStatusSubsc' + '204': + description: > + No Content. The Individual Connection Status Subscription resource is successfully + modified and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Request the deletion of an existing Individual Connection Status Subscription resource. + operationId: DeleteIndConnStatusSubsc + tags: + - Individual Connection Status Subscription (Document) + responses: + '204': + description: > + No Content. The Individual Connection Status Subscription resource is successfully + deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + components: securitySchemes: @@ -199,12 +378,10 @@ components: transmission service. type: object properties: - valServerId: - type: string valServiceId: type: string - valTargetUeId: - type: string + valTargetId: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' valServerConnInfo: $ref: '#/components/schemas/ConnInfo' qosInfo: @@ -216,7 +393,6 @@ components: suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - valServerId - valServerConnInfo TransResp: @@ -325,6 +501,8 @@ components: $ref: '#/components/schemas/ConnInfo' notifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTimeRo' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: @@ -332,17 +510,39 @@ components: - valServerConnInfo - notifUri + ConnStatusSubscPatch: + description: > + Represents the requested modifications to a Connection Status Subscription. + type: object + properties: + events: + type: array + items: + $ref: '#/components/schemas/ConnStatusEvent' + minItems: 1 + valServiceId: + type: string + valTgtUe: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + valServerConnInfo: + $ref: '#/components/schemas/ConnInfo' + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + ConnStatusNotif: description: > Represents a Connection Status Notification. type: object properties: + subscriptionId: + type: string reports: type: array items: $ref: '#/components/schemas/ConnStatusReport' minItems: 1 required: + - subscriptionId - reports ConnStatusReport: @@ -354,18 +554,26 @@ components: $ref: '#/components/schemas/ConnStatusEvent' valTgtUe: $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + valServiceId: + type: string connEstData: $ref: '#/components/schemas/ConnEstabData' required: - event + - valTgtUe + - valServiceId ConnEstabData: description: > Represents SEALDD connection status establishment data. type: object properties: + ddServerConnInfo: + $ref: '#/components/schemas/ConnInfo' comLifetime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + required: + - ddServerConnInfo # SIMPLE DATA TYPES @@ -410,4 +618,3 @@ components: # Data types describing alternative data types or combinations of data types: # - diff --git a/TS29548_SDD_TransmissionQualityMeasurement.yaml b/TS29548_SDD_TransmissionQualityMeasurement.yaml index 97bf741..9559e64 100644 --- a/TS29548_SDD_TransmissionQualityMeasurement.yaml +++ b/TS29548_SDD_TransmissionQualityMeasurement.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: SEALDD Server Data Transmission Quality Measurement Service - version: 1.0.0-alpha.5 + version: 1.0.0-alpha.8 description: | SEALDD Server Data Transmission Quality Measurement Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.548 V1.0.0; Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.548 V18.0.0; Service Enabler Architecture Layer for Verticals (SEAL); SEAL Data Delivery (SEALDD) Server Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.548/ @@ -331,6 +331,13 @@ paths: schema: type: boolean default: false + description: > + Indicates that the request is related to all VAL UE(s) of the application traffic + identified by the application traffic identifier(s) provided within the + appTrafficIds attribute. + true indicates that the request is related to all VAL UE(s). + false" indicates that the request is not related to all VAL UE(s). + The default value when this query parameter is omitted is false. - name: supp-feat in: query required: false @@ -400,6 +407,11 @@ components: items: type: string minItems: 1 + valUserIdsList: + type: array + items: + type: string + minItems: 1 allValUesInd: type: boolean default: false @@ -431,6 +443,7 @@ components: oneOf: - required: [valGroupId] - required: [valUeIdsList] + - required: [valUserIdsList] - required: [allValUesInd] TransQualMeasReq: @@ -453,8 +466,17 @@ components: $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' measExpTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' - repCriteria: - $ref: '#/components/schemas/TransQualMeasCriteria' + repCriteriaSets: + type: object + additionalProperties: + $ref: '#/components/schemas/TransQualMeasCriteriaSet' + minProperties: 1 + description: > + Contains one or several set(s) of transmission quality measurement reporting + criteria. + The key of the map shall be any unique string encoded value. + Only the criteria related to the subscribed measurement(s) within the measId attribute + shall be present within this attribute. required: - measId @@ -488,12 +510,15 @@ components: Represents a Transmission Quality Measurement Notification. type: object properties: + subscriptionId: + type: string reports: type: array items: $ref: '#/components/schemas/TransQualMeasReport' minItems: 1 required: + - subscriptionId - reports TransQualMeasReport: @@ -511,10 +536,17 @@ components: items: type: string minItems: 1 + valUserIds: + type: array + items: + type: string + minItems: 1 measData: $ref: '#/components/schemas/TransQualMeasData' required: - measId + not: + required: [valUeIds, valUserIds] TransQualMeasCriteria: description: > @@ -522,29 +554,41 @@ components: type: object properties: minLatency: - $ref: 'TS29571_CommonData.yaml#/components/schemas/UintegerRm' + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + avgLatency: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' maxLatency: - $ref: 'TS29571_CommonData.yaml#/components/schemas/UintegerRm' + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' minBitRate: - $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRateRm' + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + avgBitRate: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' maxBitRate: - $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRateRm' + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' minPackLossRate: - $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketLossRate' + avgPackLossRate: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketLossRate' maxPackLossRate: - $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm' + $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketLossRate' minJitter: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32Rm' + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' + avgJitter: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' maxJitter: - $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32Rm' - anyOf: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' + oneOf: - required: [minLatency] + - required: [avgLatency] - required: [maxLatency] - required: [minBitRate] + - required: [avgBitRate] - required: [maxBitRate] - required: [minPackLossRate] + - required: [avgPackLossRate] - required: [maxPackLossRate] - required: [minJitter] + - required: [avgJitter] - required: [maxJitter] TransQualMeasData: @@ -562,6 +606,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' kPercLatency: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + kValLatency: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' minBitRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' maxBitRate: @@ -572,6 +618,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' kPercBitRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + kValBitRate: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' minPackLossRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketLossRate' maxPackLossRate: @@ -582,6 +630,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketLossRate' kPercPackLossRate: $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketLossRate' + kValPackLossRate: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' minJitter: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' maxJitter: @@ -592,6 +642,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' kPercJitter: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' + kValJitter: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' measPeriod: $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' timestamp: @@ -625,6 +677,19 @@ components: required: - reports + TransQualMeasCriteriaSet: + description: > + Represents a set of transmission quality measurement reporting criteria. + type: object + properties: + criteria: + $ref: '#/components/schemas/TransQualMeasCriteria' + direction: + $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/MatchingDirection' + required: + - criteria + - direction + # SIMPLE DATA TYPES # @@ -660,7 +725,7 @@ components: enum: - INDIVIDUAL_VAL_UE - VAL_GROUP - - ALL_UES + - ALL_VAL_UES - type: string description: > This string provides forward-compatibility with future extensions to the enumeration @@ -668,11 +733,10 @@ components: description: | Represents the reporting granularity. Possible values are: - - INDIVIDUAL_VAL_UE: Indicates that the granularity is individual VAL UE. + - INDIVIDUAL_VAL_UE: Indicates that the granularity is individual VAL UE/user. - VAL_GROUP: Indicates that the granularity is VAL Group. - - ALL_UES: Indicates that the granularity is all VAL UE(s). + - ALL_VAL_UES: Indicates that the granularity is all VAL UE/user(s). # Data types describing alternative data types or combinations of data types: # - diff --git a/TS29549_SS_AADRF_DataManagement.yaml b/TS29549_SS_AADRF_DataManagement.yaml new file mode 100644 index 0000000..95e0a5b --- /dev/null +++ b/TS29549_SS_AADRF_DataManagement.yaml @@ -0,0 +1,412 @@ +openapi: 3.0.0 + +info: + title: SS_AADRF_DataManagement + description: | + API for A-ADRF Data Management Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + version: "1.0.0-alpha.1" + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-aadrf-datamanagement/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /subscriptions: + post: + summary: Create Individual A-ADRF Data Management Subscription. + operationId: CreateAADRFEventSubscription + tags: + - A-ADRF Data Management Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DataManageSub' + responses: + '201': + description: > + The requested Individual A-ADRF Data Management Subscription is successfully created and + a representation of the created resource is returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/DataManageSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + myNotification: + '{$request.body#/notifUri}': + post: + summary: Notify on the requested data. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DataManageNotification' + responses: + '204': + description: The notification is successfully received. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /subscriptions/{subscriptionId}: + parameters: + - name: subscriptionId + in: path + description: > + Represents the Individual A-ADRF Data Management Subscription resource. + required: true + schema: + type: string + + delete: + summary: Remove the Individual A-ADRF Data Management Subscription. + operationId: UnsubscribeAADRFEventSubscription + tags: + - Individual A-ADRF Data Management Subscription (Document). + responses: + '204': + description: > + The individual A-ADRF Data Management Subscription resource matching the subscriptionId + is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + DataManageSub: + description: Represents the event subscriptions. + type: object + properties: + eventSubscriptions: + type: array + items: + $ref: '#/components/schemas/EventSubscription' + minItems: 1 + description: Subscribed events. + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + notifCorrId: + type: string + description: Notification correlation identifier. + supportedFeatures: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - eventSubscriptions + - notifUri + + EventSubscription: + description: Represents the event subscription. + type: object + properties: + event: + $ref: '#/components/schemas/AadrfEvent' + dataCollectReq: + type: string + dataProducerIds: + type: array + items: + type: string + minItems: 1 + description: The list of Data Producer IDs. + valUes: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: The target VAL UE(s) identifiers. + valServerId: + type: string + description: The target VAL server ID. + valServiceId: + type: string + description: The VAL service ID. + profileCriteria: + type: string + validConds: + $ref: 'TS29549_SS_Events.yaml#/components/schemas/ValidityConditions' + snssais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + minItems: 1 + description: Identification(s) of network slice(s) to which the subscription applies. + edgeReq: + $ref: '#/components/schemas/EdgeReq' + apiLogReq: + $ref: '#/components/schemas/ApiLogReq' + required: + - event + + EdgeReq: + description: Represents the EDGE data request requirement. + type: object + properties: + dnais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + minItems: 1 + description: Identifiers the DN Access Identifier. + dnns: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + minItems: 1 + description: Identifiers the DN Access Identifier. + destEasId: + type: string + description: Identifier for the destination EAS. + destEesId: + type: string + description: Identifier for the destination EES. + anyOf: + - required: [dnais] + - required: [dnns] + - required: [destEasId] + - required: [destEesId] + + ApiLogReq: + description: Represents the API log request requirement. + type: object + properties: + apiRequestorInfo: + type: string + apiId: + type: string + description: String identifying the API invoked. + apiName: + type: string + description: Name of the API which was invoked. + apiVersion: + type: string + description: Version of the API which was invoked. + inputParameters: + type: array + items: {} + minItems: 1 + description: List of input parameters. + result: + type: string + description: For HTTP protocol, it contains HTTP status code of the invocation. + apiInvokerId: + type: string + description: Identity of the API invoker which invoked the service API. + exposureLvl: + $ref: '#/components/schemas/ExposureLevel' + apiAggreInfo: + type: string + required: + - apiRequestorInfo + + DataManageNotification: + description: Represents the notification to the consumer. + type: object + properties: + event: + $ref: '#/components/schemas/AadrfEvent' + notifCorrId: + type: string + description: Notification correlation identifier. + valServerId: + type: string + description: The target VAL server ID. + valServiceId: + type: string + description: The VAL service ID. + valUeIds: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: The target VAL UE(s) identifiers. + locAccuracy: + type: string + validConds: + $ref: 'TS29549_SS_Events.yaml#/components/schemas/ValidityConditions' + apiLog: + $ref: '#/components/schemas/ApiLogInfo' + rttDeviation: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Float' + snssais: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + minItems: 1 + description: Identification(s) of network slice(s) to which the subscription applies. + edgeInfo: + $ref: '#/components/schemas/EdgeInfo' + required: + - event + + ApiLogInfo: + description: Represents the API log data. + type: object + properties: + apiId: + type: string + description: String identifying the API invoked. + apiName: + type: string + description: Name of the API which was invoked. + failNum: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + apiAvailableInd: + type: boolean + description: Indicates the API availability. + apiVerChgNum: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + apiLocChg: + type: boolean + description: Indicates the API location changes for the target API. + apiThrottlingEvents: + type: string + invokeNum: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + apiVersion: + type: string + description: Version of the API which was invoked. + required: + - apiId + + EdgeInfo: + description: Represents the EDGE related data. + type: object + properties: + edgeReq: + $ref: '#/components/schemas/EdgeReq' + output: + type: string + + +# Simple data types and Enumerations + AadrfEvent: + anyOf: + - type: string + enum: + - HISTORICAL_SERVICEAPI + - NETWORK_SLICE + - EDGE_DATA + - LOCATION_ACCURACY + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration and + is not used to encode content defined in the present version of this API. + description: | + Indicates the subscribed events. + Possible values are: + - HISTORICAL_SERVICEAPI: The event for historical service API logs. + - NETWORK_SLICE: The event for the network slice data. + - EDGE_DATA: The event for the EDGE related data. + - LOCATION_ACCURACY: The event for the location accuracy data. + + ExposureLevel: + anyOf: + - type: string + enum: + - READ + - WRITE + - DELETE + - type: string + description: > + This string provides forward-compatibility with future extensions to the enumeration and + is not used to encode content defined in the present version of this API. + description: | + Indicates the exposure level. + Possible values are: + - READ: The exposure level for the logs to be exposed is read. + - WRITE: The exposure level for the logs to be exposed is write. + - DELETE: The exposure level for the logs to be exposed is delete. diff --git a/TS29549_SS_ADAE_EdgeLoadAnalytics.yaml b/TS29549_SS_ADAE_EdgeLoadAnalytics.yaml new file mode 100644 index 0000000..128848d --- /dev/null +++ b/TS29549_SS_ADAE_EdgeLoadAnalytics.yaml @@ -0,0 +1,274 @@ +openapi: 3.0.0 + +info: + title: SS_ADAE_EdgeLoadAnalytics + description: | + API for ADAE Edge Load Analytics. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + version: "1.0.0-alpha.1" + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-adae-el/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /edge-load: + post: + description: Creates a new individual Edge Load Event Subscription. + operationId: EdgeSub + tags: + - Edge Load Events Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/EdgeSub' + callbacks: + notifUri: + '{request.body#/notifUri}': + post: + requestBody: # contents of the callback message + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/EdgeNotif' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: Edge Load Events subscription resource created successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/EdgeSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /edge-load/{edgeLdId}: + get: + description: Retrieves an individual Edge Load Event Subscription. + operationId: RetrieveIndEdgeLdEventSubsc + tags: + - Individual Edge Load Events Subscription (Document) + parameters: + - name: edgeLdId + in: path + description: Identifier of an individual Events Subscription. + required: true + schema: + type: string + responses: + '200': + description: The individual edge load subscription. + content: + application/json: + schema: + $ref: '#/components/schemas/EdgeSub' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + delete: + description: Deletes an individual Edge Load Event Subscription. + operationId: DeleteIndEdgeLdEventSubsc + tags: + - Individual Edge Load Events Subscription (Document) + parameters: + - name: edgeLdId + in: path + description: Identifier of an individual Events Subscription + required: true + schema: + type: string + responses: + '204': + description: > + The individual Edge Load Events Subscription matching the subscriptionId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + EdgeSub: + description: Represents an individual Edge Load Subscription resource. + type: object + properties: + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + destinationEasInfo: + type: string + description: String representing the information for the destination EAS. + destinationEesId: + type: string + description: String identifying the the destination EES. + dnai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + dataProdProfile: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/ProdProfileInfo' + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + report: + $ref: '#/components/schemas/EdgeNotif' + reportReq: + $ref: '#/components/schemas/ReportingConfig' + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + timeInterval: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - analyticsType + - notifUri + anyOf: + - required: [destinationEasInfo] + - required: [destinationEesId] + - oneOf: + - required: [dnai] + - required: [dnn] + + EdgeNotif: + description: Represents notification information of an Edge Load Event. + type: object + properties: + analyticsOutput: + type: string + description: String representing the edge load analytics. + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + required: + - analyticsOutput + + ReportingConfig: + description: Represents notification information of an Edge Load Event. + type: object + properties: + reportingMode: + $ref: 'TS29508_Nsmf_EventExposure.yaml#/components/schemas/NotificationMethod' + immRep: + type: boolean + description: > + It indicates immediate reporting. When included and set to true, + it indicates that immediate reporting of the subscribed event(s) + is requested. The default value is false. + required: + - reportingMode diff --git a/TS29549_SS_ADAE_LocationAccuracyAnalytics.yaml b/TS29549_SS_ADAE_LocationAccuracyAnalytics.yaml new file mode 100644 index 0000000..3ca8bfe --- /dev/null +++ b/TS29549_SS_ADAE_LocationAccuracyAnalytics.yaml @@ -0,0 +1,264 @@ +openapi: 3.0.0 + +info: + title: SS_ADAE_LocationAccuracyAnalytics + description: | + API for ADAE location accuracy performance analytics service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + version: "1.0.0-alpha.1" + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-adae-laa/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /location-accuracy: + post: + description: > + Creates a new individual location accuracy performance event subscription. + operationId: LocAccurSubs + tags: + - Location accuracy performance event subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/LocAccurSub' + callbacks: + laaNotification: + '{$request.body#/notifUri}': + post: + requestBody: # contents of the callback message + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/LocAccurNotif' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: Location accuracy subscription resource created successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/LocAccurSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /location-accuracy/{locAccId}: + get: + description: Retrieves an individual location accuracy performance event subscription. + operationId: ReadIndLocAccurPerfEventSubsc + tags: + - Individual location accuracy performance event subscription (Document) + parameters: + - name: locAccId + in: path + description: > + Identifier of an individual location accuracy performance event subscription. + required: true + schema: + type: string + responses: + '200': + description: > + The individual location accuracy subscription matching the locAccId is retrieved. + content: + application/json: + schema: + $ref: '#/components/schemas/LocAccurSub' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + delete: + description: Deletes an individual location accuracy performance event subscription. + operationId: DeleteIndLocAccurPerfEventSubsc + tags: + - Individual location accuracy performance event subscription (Document) + parameters: + - name: locAccId + in: path + description: > + Identifier of an individual location accuracy performance event subscription. + required: true + schema: + type: string + responses: + '204': + description: > + The individual location accuracy performance subscription matching the locAccId + is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + LocAccurSub: + description: > + Represents an individual location accuracy performance event subscription resource. + type: object + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + valUeIds: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: > + One or more VAL UE IDs whose analytics are subject to subcription. + accuracy: + $ref: 'TS29122_MonitoringEvent.yaml#/components/schemas/Accuracy' + valServiceId: + type: string + description: > + Identifier of the VAL service for which location accuracy analytics is requested. + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + timeValidity: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + ueMobs: + type: array + items: + $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/UeMobility' + minItems: 1 + description: Mobility and route information of the target VAL UEs. + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - analyticsType + - valUeIds + - accuracy + - notifUri + + LocAccurNotif: + description: Represents notification of the location accuracy performance event. + type: object + properties: + output: + type: string + description: Event output data. + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + required: + - output diff --git a/TS29549_SS_ADAE_ServiceApiAnalytics.yaml b/TS29549_SS_ADAE_ServiceApiAnalytics.yaml new file mode 100644 index 0000000..8861d9e --- /dev/null +++ b/TS29549_SS_ADAE_ServiceApiAnalytics.yaml @@ -0,0 +1,251 @@ +openapi: 3.0.0 + +info: + title: SS_ADAE_ServiceApiAnalytics + description: | + API for ADAE service API analytics service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + version: "1.0.0-alpha.1" + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-adae-sspa/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /service-api: + post: + description: > + Creates a new individual service API event subscription. + operationId: SrvApiSubs + tags: + - Service API event subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SrvApiSub' + callbacks: + saaNotification: + '{$request.body#/notifUri}': + post: + requestBody: # contents of the callback message + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SrvApiNotif' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: Service API event subscription resource created successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/SrvApiSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /service-api/{srvApiId}: + get: + description: Retrieves an individual service API event subscription. + operationId: ReadIndSrvApiEventSubsc + tags: + - Individual service API event subscription (Document) + parameters: + - name: srvApiId + in: path + description: > + Identifier of an individual service API event subscription. + required: true + schema: + type: string + responses: + '200': + description: > + The individual service API event subscription matching the srvApiId is retrieved. + content: + application/json: + schema: + $ref: '#/components/schemas/SrvApiSub' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + delete: + description: Deletes an individual service API event subscription. + operationId: DeleteIndSrvApiEventSubsc + tags: + - Individual service API event subscription (Document) + parameters: + - name: srvApiId + in: path + description: > + Identifier of an individual service API event subscription. + required: true + schema: + type: string + responses: + '204': + description: > + The individual service API subscription matching the srvApiId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + SrvApiSub: + description: Represents an individual service API event subscription. + type: object + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + serviceApiName: + type: string + description: Service API name. + serviceApiType: + type: string + description: Service API type. + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + timeValidity: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + timeHorizon: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - notifUri + oneOf: + - required: [serviceApiName] + - required: [serviceApiType] + + SrvApiNotif: + description: Represents notification of the service API event. + type: object + properties: + requestorId: + type: string + description: Identifier of the requestor of the analytics. + output: + type: string + description: Output for analytics. + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + required: + - requestorId + - output diff --git a/TS29549_SS_ADAE_SlicePerformanceAnalytics.yaml b/TS29549_SS_ADAE_SlicePerformanceAnalytics.yaml new file mode 100644 index 0000000..155218c --- /dev/null +++ b/TS29549_SS_ADAE_SlicePerformanceAnalytics.yaml @@ -0,0 +1,265 @@ +openapi: 3.0.0 + +info: + title: SS_ADAE_SlicePerformanceAnalytics + description: | + API for ADAE slice-specific application performance analytics service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + version: "1.0.0-alpha.1" + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-adae-sspa/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /slice-specific-application-performance: + post: + description: > + Creates a new individual slice-specific application performance event subscription. + operationId: SliceAppPerfSubs + tags: + - Slice-specific application performance event subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SliceAppPerfSub' + callbacks: + sspaNotification: + '{$request.body#/notifUri}': + post: + requestBody: # contents of the callback message + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SliceAppPerfNotif' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: Slice-specific performance event subscription resource created successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceAppPerfSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /slice-specific-application-performance/{ssAppPerfId}: + get: + description: > + Retrieves an individual slice-specific application performance event subscription. + operationId: ReadIndSliceAppPerfEventSubsc + tags: + - Individual slice-specific application performance event subscription (Document) + parameters: + - name: ssAppPerfId + in: path + description: > + Identifier of an individual slice-specific application performance event subscription. + required: true + schema: + type: string + responses: + '200': + description: > + The individual slice-specific application performance + subscription matching the ssAppPerfId is retrieved. + content: + application/json: + schema: + $ref: '#/components/schemas/SliceAppPerfSub' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + delete: + description: Deletes an individual slice-specific application performance event subscription. + operationId: DeleteIndSliceAppPerfEventSubsc + tags: + - Individual slice-specific application performance event subscription (Document) + parameters: + - name: ssAppPerfId + in: path + description: > + Identifier of an individual slice-specific application performance event subscription. + required: true + schema: + type: string + responses: + '204': + description: > + The individual slice-specific application performance subscription matching + the ssAppPerfId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + SliceAppPerfSub: + description: > + Represents an individual slice-specific application performance event subscription resource. + type: object + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + sliceId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + valUeIds: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: > + One or more VAL UE IDs whose analytics are subject to subcription. + valServerId: + type: string + description: > + Identity of the VAL server if the consumer is different than the VAL server of interest. + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + timeValidity: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + timeHorizon: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - analyticsType + - notifUri + - sliceId + + SliceAppPerfNotif: + description: Represents notification of the slice-specific application performance event. + type: object + properties: + output: + type: string + description: Output data. + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + timeHorizon: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + required: + - output diff --git a/TS29549_SS_ADAE_SliceUsagePatternAnalytics.yaml b/TS29549_SS_ADAE_SliceUsagePatternAnalytics.yaml new file mode 100644 index 0000000..1bc117a --- /dev/null +++ b/TS29549_SS_ADAE_SliceUsagePatternAnalytics.yaml @@ -0,0 +1,260 @@ +openapi: 3.0.0 + +info: + title: SS_ADAE_SliceUsagePatternAnalytics + description: | + API for ADAE Slice Usage Pattern Analytics. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + version: "1.0.0-alpha.1" + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-adae-sup/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /slice-usage-pattern: + post: + description: Creates a new Individual slice usage pattern subscription. + operationId: CreateSliceUsageSub + tags: + - Slice Usage Pattern Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SUPSub' + responses: + '201': + description: Slice Usage Pattern subscription resource created successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/SUPSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + SUPNotification: + '{$request.body#/notifUri}': + post: + requestBody: # contents of the callback message + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SUPNotif' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /slice-usage-pattern/{subscriptionId}: + get: + description: Retrieves an individual Slice Usage Pattern Subscription. + operationId: ReadSUPSub + tags: + - Individual slice usage pattern subscription (Document) + parameters: + - name: subscriptionId + in: path + description: Identifier of an individual Events Subscription + required: true + schema: + type: string + responses: + '200': + description: The individual slice usage pattern subscription. + content: + application/json: + schema: + $ref: '#/components/schemas/SUPSub' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + delete: + description: Deletes an individual Slice Usage Pattern Subscription. + operationId: DeleteSUPSub + tags: + - Individual slice usage pattern subscription (Document) + parameters: + - name: subscriptionId + in: path + description: Identifier of an individual Events Subscription + required: true + schema: + type: string + responses: + '204': + description: > + The individual Slice Usage Pattern Subscription matching the subscriptionId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + SUPSub: + description: Represents an individual Slice Usage Pattern Subscription. + type: object + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + sliceId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + valUeIds: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: List of identities of one or more VAL UEs. + valServerId: + type: string + description: VAL server identifier. + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + timeValidity: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + historicTimeInt: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + immRep: + type: boolean + description: Immediate reporting flag. + immNotif: + $ref: '#/components/schemas/SUPNotif' + dataId: + type: string + description: Identity of the slice usage statistics data which is to be collected. + valServiceId: + type: string + description: VAL service identifier. + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - notifUri + - analyticsType + - sliceId + + SUPNotif: + description: Represents notification information of a Slice Usage Pattern Event. + type: object + properties: + output: + type: string + description: Implementation-specific string representing the slice usage analytics. + required: + - output diff --git a/TS29549_SS_ADAE_Ue2UePerformanceAnalytics.yaml b/TS29549_SS_ADAE_Ue2UePerformanceAnalytics.yaml new file mode 100644 index 0000000..87b9f39 --- /dev/null +++ b/TS29549_SS_ADAE_Ue2UePerformanceAnalytics.yaml @@ -0,0 +1,378 @@ +openapi: 3.0.0 + +info: + title: SS_ADAE_Ue2UePerformanceAnalytics + description: | + API for SEAL VAL Service Area Configuration Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + version: "1.0.0-alpha.1" + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-adae-uupa/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /ue2ue-session-performance: + post: + summary: Create an individual UE-to-UE session performance analytics event subscription. + operationId: SubscribeUe2UePerfAnalytics + tags: + - UE-to-UE Performance Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/U2UPerfSub' + responses: + '201': + description: > + Subscription to the UE-to-UE session performance analytics is created. + content: + application/json: + schema: + $ref: '#/components/schemas/U2UPerfSub' + headers: + Location: + description: Contains the URI of the newly created individual resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + NotifyU2USessionEvent: + '{$request.body#/notifUri}': + post: + summary: Notify the UE-to-UE session performance analytics. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/U2UPerfNotif' + responses: + '204': + description: The notification is successfully received. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /ue2ue-session-performance/{u2uPerfId}: + get: + summary: Read the individual UE-to-UE session performance analytics event subscription. + operationId: ReadU2UPerfSubscription + tags: + - Individual UE-to-UE Performance Subscription (Document) + parameters: + - name: u2uPerfId + in: path + description: > + Represents the identifier of an individual UE-to-UE session performance + analytics subscription. + required: true + schema: + type: string + responses: + '200': + description: > + The requested individual UE-to-UE session performance event subscription is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/U2UPerfSub' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Remove the individual UE-to-UE session performance analytics event subscription. + operationId: RemoveU2UPerfSubscription + tags: + - Individual UE-to-UE Performance Subscription (Document) + parameters: + - name: u2uPerfId + in: path + description: > + Represents the identifier of an individual UE-to-UE session performance + analytics subscription. + required: true + schema: + type: string + responses: + '204': + description: > + The individual UE-to-UE session performance event subscription matching + the u2uPerfId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + U2UPerfSub: + description: > + Represents the UE-to-UE session performance analytics subscription. + type: object + properties: + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + valUeIds: + type: array + description: > + Represent the list of VAL UEs, whose UE-to-UE session analytics are subscribed to. + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + valServiceId: + description: Represents the VAL service for which the subscription applies. + type: string + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + repReqs: + $ref: '#/components/schemas/U2UReportingRequirements' + expReqs: + type: array + description: > + Represents the exposure level requirements for the analytics to be exposed. + items: + $ref: '#/components/schemas/U2UThreshold' + minItems: 1 + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + timeInterval: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - analyticsType + - valUeIds + - notifUri + + U2UPerfNotif: + description: > + Represents the threshold for UE-to-UE session performance analytics. + type: object + properties: + analyticsOutput: + type: array + description: > + Represents the exposure level requirements for the analytics to be exposed. + items: + $ref: '#/components/schemas/U2UAnalyticsData' + minItems: 1 + analyticsType: + $ref: 'TS29549_SS_ADAE_VALPerformanceAnalytics.yaml#/components/schemas/AnalyticsType' + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + required: + - analyticsOutput + + U2UReportingRequirements: + description: > + Represents the UE-to-UE session performance analytics reporting requirements. + type: object + properties: + repMode: + $ref: 'TS29508_Nsmf_EventExposure.yaml#/components/schemas/NotificationMethod' + reportingPeriod: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + reportingInds: + type: array + description: > + Indicates the list of the requested analytics. + items: + $ref: '#/components/schemas/U2UAnalytics' + minItems: 1 + reportingThrs: + type: array + description: > + Identifies reporting threshold corresponding to the application QoS index(es). + items: + $ref: '#/components/schemas/U2UThreshold' + minItems: 1 + reportingGrn: + $ref: '#/components/schemas/U2UReportingGranularity' + required: + - repMode + - reportingInds + - reportingGrn + + U2UThreshold: + description: > + Represents the threshold for UE-to-UE session performance analytics. + type: object + properties: + value: + $ref: '#/components/schemas/U2UAnalyticsData' + thrDirect: + $ref: 'TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/MatchingDirection' + required: + - value + - thrDirect + + U2UAnalyticsData: + description: > + Represents the UE-to-UE analytics data. + type: object + properties: + valUes: + $ref: '#/components/schemas/U2UPair' + avgLatency: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + avgPer: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PacketErrRate' + avgDataRate: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + jitter: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Float' + + U2UPair: + description: > + Represents the UE-to-UE pair. + type: object + properties: + valUeA: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + valUeB: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + +# Simple data types and Enumerations + U2UAnalytics: + anyOf: + - type: string + enum: + - AVG_LATENCY + - AVG_PER + - AVG_DATA_RATE + - JITTER + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration and is not used to encode + content defined in the present version of this API. + description: | + Represents the UE-to-UE analytics types. + Possible values are: + - AVG_LATENCY: The indication for requesting the average latency analytics. + - AVG_PER: The indication for requesting the average packet error rate analytics. + - AVG_DATA_RATE: The indication for requesting the average data rate analytics. + - JITTER: The indication for requesting the jitter analytics. + + U2UReportingGranularity: + anyOf: + - type: string + enum: + - GROUP + - INDIVIDUAL + - type: string + description: > + This string provides forward-compatibility with future + extensions to the enumeration and is not used to encode + content defined in the present version of this API. + description: | + Represents the UE-to-UE reporting granularity. + Possible values are: + - GROUP: The indication for requesting the analytics for all + VAL UE-to-UE application sessions. + - INDIVIDUAL: The indication for requesting the analytics for individual + VAL UE-to-UE application sessions. diff --git a/TS29549_SS_ADAE_VALPerformanceAnalytics.yaml b/TS29549_SS_ADAE_VALPerformanceAnalytics.yaml new file mode 100644 index 0000000..567f692 --- /dev/null +++ b/TS29549_SS_ADAE_VALPerformanceAnalytics.yaml @@ -0,0 +1,433 @@ +openapi: 3.0.0 + +info: + title: SS_ADAE_VALPerformanceAnalytics + description: | + API for ADAE VAL performance analytics service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + version: "1.0.0-alpha.1" + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-adae-pa/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /application-performance: + post: + description: Creates a new individual VAL performance event subscription. + operationId: CreateIndValPerfEventSubsc + tags: + - VAL performance event subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AppPerfSub' + callbacks: + paNotification: + '{$request.body#/notifUri}': + post: + requestBody: # contents of the callback message + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AppPerfNotif' + responses: + '204': + description: No Content (successful notification) + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + responses: + '201': + description: VAL performance event subscription resource created successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/AppPerfSub' + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /application-performance/{appPerfId}: + get: + description: Retrieves an individual VAL performance event subscription. + operationId: ReadIndValPerfEventSubsc + tags: + - Individual VAL performance event subscription (Document) + parameters: + - name: appPerfId + in: path + description: Identifier of an individual VAL performance event subscription. + required: true + schema: + type: string + responses: + '200': + description: > + The individual VAL performance subscription matching the appPerfId is retrieved. + content: + application/json: + schema: + $ref: '#/components/schemas/AppPerfSub' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + delete: + description: Deletes an individual VAL performance event subscription. + operationId: DeleteIndValPerfEventSubsc + tags: + - Individual VAL performance event subscription (Document) + parameters: + - name: appPerfId + in: path + description: Identifier of an individual VAL performance event subscription. + required: true + schema: + type: string + responses: + '204': + description: > + The individual VAL performance subscription matching the appPerfId is deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + AppPerfSub: + description: Represents an individual VAL performance event subscription resource. + type: object + properties: + notifUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + analyticsType: + $ref: '#/components/schemas/AnalyticsType' + valServiceId: + type: string + valUeIds: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: > + One or more VAL UE IDs whose analytics or data collection are subject to subcription. + valServerId: + type: string + description: Identity of the VAL server + dataProdProfile: + $ref: '#/components/schemas/ProdProfileInfo' + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + area: + $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + timeValidity: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - notifUri + - analyticsType + - valServiceId + + AppPerfNotif: + description: Represents notification of the VAL performance event. + type: object + properties: + output: + type: string + description: Provided output for analytics. + valServerId: + type: string + description: VAL Server identifier. + valUeIds: + type: array + items: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + minItems: 1 + description: List of VAL UE identifiers. + analyticsType: + $ref: '#/components/schemas/AnalyticsType' + confLevel: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + timeHorizon: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + required: + - output + - valServerId + + ProdProfileInfo: + description: Represents capability of the data producer. + type: object + properties: + prodId: + type: string + description: Identity of the data producer. + prodType: + $ref: '#/components/schemas/ProducerType' + dataType: + $ref: '#/components/schemas/ProducerData' + prodRole: + $ref: '#/components/schemas/ProducerRole' + origProdIds: + type: array + items: + type: string + minItems: 1 + description: > + Identifies the identity of the original data producers. + dataFresh: + type: integer + description: Duration of elapsed time in seconds. + producerCap: + $ref: '#/components/schemas/ProducerCap' + required: + - prodId + - prodType + - dataType + + ProducerCap: + description: Represents capability of the data producer. + type: object + properties: + durationTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + anonymization: + type: boolean + description: > + Set to true if anonymization is supported. + Set to false or omitted otherwise. + dataRate: + $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' + schedule: + $ref: 'TS29122_CpProvisioning.yaml#/components/schemas/ScheduledCommunicationTime' + + AnalyticsType: + description: Represents type of requested analytics. + type: object + properties: + category: + $ref: '#/components/schemas/AnalyticsCategory' + mode: + $ref: '#/components/schemas/AnalyticsMode' + mlEnabled: + type: boolean + description: > + Set to true if the provided analytics are ML-enabled. + Set to false if the provided analytics are not ML-enabled. + Omitted if the provided analytics lack onfo for being ML-enabled or not. + +# Simple data types and Enumerations + + AnalyticsCategory: + anyOf: + - type: string + enum: + - PREDICTIVE + - STATISTICS + - 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: | + Represents the type of the analytics with the values: + - PREDICTIVE: The event for the analytics is for predictive analytics. + - STATISTICS: The event for analytics is for statistics analytics. + + AnalyticsMode: + anyOf: + - type: string + enum: + - OFFLINE + - ONLINE + - 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: | + Represents the mode of the analytics with the values: + - OFFLINE: Represents offline analytics. + - ONLINE: Represents online analytics. + + ProducerType: + anyOf: + - type: string + enum: + - ADAE_CLIENT + - A_DCCF + - VAL_SERVER + - SEAL_SERVER + - SEAL_CLIENT + - EES + - EAS + - 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: | + Represents the type of the data producer with the values: + - ADAE_CLIENT: The data producer is ADAE client. + - A_DCCF: The data producer is A-DCCF. + - VAL_SERVER: The data producer is VAL server. + - SEAL_SERVER: The data producer is SEAL server. + - SEAL_CLIENT: The data producer is SEAL client. + - EES: The data producer is EES. + - EAS: The data producer is EAS. + + ProducerData: + anyOf: + - type: string + enum: + - PERFORMANCE_INDICATOR + - REPRODUCER_USAGE_DATA + - SERVER_LOAD_DATA + - APPLICATION_PERFORMANCE + - EDGE_LOAD + - 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: | + Represents the data type of the data producer with the values: + - PERFORMANCE_INDICATOR: The data type of the data producer is + performance indictor. + - REPRODUCER_USAGE_DATA: The data type of the data producer is + reproducer usage data. + - REPRODUCER_USAGE_DATA: The data type of the data producer is + reproducer usage data. + - SERVER_LOAD_DATA: The data type of the data producer is + server load data. + - APPLICATION_PERFORMANCE: The data type of the data producer is + application performance. + - EDGE_LOAD: The data type of the data producer is + edge load. + + ProducerRole: + anyOf: + - type: string + enum: + - GENERATING_ENTITY + - ORIGINAL_PRODUCER + - RESPOSITORY + - 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: | + Represents the role of the data producer with the values: + - GENERATING_ENTITY: The role of the data producer is generating entity. + - ORIGINAL_PRODUCER: The role of the data producer is origina producer. + - RESPOSITORY: The role of the data producer is repository. diff --git a/TS29549_SS_Events.yaml b/TS29549_SS_Events.yaml index 4df2ea6..8ac72ab 100644 --- a/TS29549_SS_Events.yaml +++ b/TS29549_SS_Events.yaml @@ -4,13 +4,13 @@ info: title: SS_Events description: | API for SEAL Events management. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.2.0-alpha.3" + version: "1.2.0-alpha.4" externalDocs: description: > - 3GPP TS 29.549 V18.3.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ @@ -443,6 +443,12 @@ components: $ref: '#/components/schemas/LocationAreaMonReport' minItems: 1 description: The location area monitoring of the given area of interest. + valGroupIds: + type: array + items: + type: string + minItems: 1 + description: Contains the identifier(s) of the deleted VAL Group(s). required: - eventId @@ -621,8 +627,7 @@ components: locInt: $ref: 'TS29122_MonitoringEvent.yaml#/components/schemas/LocationInfo' valSvcId: - description: Identifier of the VAL service area to monitor the location deviation. - type: string + $ref: 'TS29549_SS_VALServiceAreaConfiguration.yaml#/components/schemas/ValSvcAreaId' notInt: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' required: @@ -696,6 +701,8 @@ components: $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea' refUe: $ref: '#/components/schemas/ReferenceUEDetail' + valSvcAreaId: + $ref: 'TS29549_SS_VALServiceAreaConfiguration.yaml#/components/schemas/ValSvcAreaId' oneOf: - required: [geoArea] - required: [refUe] @@ -786,6 +793,7 @@ components: - LM_LOCATION_DEVIATION_MONITOR - GM_TEMP_GROUP_FORMATION - LM_LOCATION_AREA_MONITOR + - GM_GROUP_DELETION - type: string description: > This string provides forward-compatibility with future @@ -810,6 +818,7 @@ components: from the Group Management Server. - LM_LOCATION_AREA_MONITOR: Events from Location Management server, related to the list of UEs moving in or moving out of the specific location. + - GM_GROUP_DELETION: Events related to deletion of existing VAL Group(s) from the GM Server. LocDevNotification: anyOf: diff --git a/TS29549_SS_GroupManagement.yaml b/TS29549_SS_GroupManagement.yaml index d08356a..8c20d92 100644 --- a/TS29549_SS_GroupManagement.yaml +++ b/TS29549_SS_GroupManagement.yaml @@ -4,13 +4,13 @@ info: title: SS_GroupManagement description: | API for SEAL Group management. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.2.0-alpha.1" + version: "1.2.0-alpha.2" externalDocs: description: > - 3GPP TS 29.549 V18.1.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ @@ -377,8 +377,7 @@ components: addLocInfo: $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' valSvcAreaId: - type: string - description: Identity of the VAL service area. + $ref: 'TS29549_SS_VALServiceAreaConfiguration.yaml#/components/schemas/ValSvcAreaId' extGrpId: $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalGroupId' com5GLanType: @@ -413,8 +412,7 @@ components: addLocInfo: $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' valSvcAreaId: - type: string - description: Identity of the VAL service area. + $ref: 'TS29549_SS_VALServiceAreaConfiguration.yaml#/components/schemas/ValSvcAreaId' extGrpId: $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalGroupId' com5GLanType: diff --git a/TS29549_SS_IdmParameterProvisioning.yaml b/TS29549_SS_IdmParameterProvisioning.yaml index 8abf994..151dc1f 100644 --- a/TS29549_SS_IdmParameterProvisioning.yaml +++ b/TS29549_SS_IdmParameterProvisioning.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: SS_IdmParameterProvisioning + version: 1.0.0-alpha.2 description: | API for SEAL Identity management. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.0.0-alpha.1" externalDocs: description: > - 3GPP TS 29.549 V18.4.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ @@ -331,26 +331,22 @@ components: schemas: VALServicesConfig: - description: Represents details of the VAL services configuration information. + description: Represents a VAL services configuration. type: object properties: - valServerId: - type: string - description: The Identifier of the VAL server provisioning the VAL services configuration. valSvcConf: type: array - description: The list of VAL service parameters provisioned. items: $ref: '#/components/schemas/VALServiceParams' minItems: 1 + description: The list of the provisioned VAL services configuration parameters. suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - valServerId - valSvcConf VALServiceParams: - description: Represents details of VAL service parameters information. + description: Represents VAL services configuration information. type: object properties: valServiceId: @@ -358,21 +354,22 @@ components: description: The identifier of the VAL service. idList: type: array - description: The list of VAL User IDs or VAL UE IDs provisioned to the VAL service. items: $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' minItems: 1 + description: The list of VAL User IDs or VAL UE IDs. required: - valServiceId - idList VALServicesConfigPatch: - description: Represents details of the partial update of VAL service configuration information. + description: > + Represents of the requested modifications to a VAL services configuration. type: object properties: valSvcConf: type: array - description: The list of VAL service parameters provisioned. + description: The list of the provisioned VAL services configuration parameters. items: $ref: '#/components/schemas/VALServiceParams' minItems: 1 diff --git a/TS29549_SS_KMParametersProvisioning.yaml b/TS29549_SS_KMParametersProvisioning.yaml new file mode 100644 index 0000000..47336ce --- /dev/null +++ b/TS29549_SS_KMParametersProvisioning.yaml @@ -0,0 +1,124 @@ +openapi: 3.0.0 + +info: + title: SEAL KM Server Key Management Parameters Provisioning Service + version: "1.0.0-alpha.1" + description: | + SEAL KM Server Key Management Parameters Provisioning Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/ss-kpp/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549 + +paths: + /request: + post: + summary: Enables a service consumer to request key parameters provisioning to the SEAL KM Server.. + operationId: Request + tags: + - Key Management Parameters Provisioning Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/VALKeyPpReq' + responses: + '200': + description: > + OK. The requested key management parameters are successfully received, processed and + provisioned. + content: + application/json: + schema: + $ref: '#/components/schemas/VALKeyPpResp' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + VALKeyPpReq: + description: Represents the key management parameters to be provisioned. + type: object + properties: + skmcUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + valServiceId: + type: string + valTgtUe: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + payloadId: + type: string + payload: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Bytes' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - skmcUri + - valServiceId + VALKeyPpResp: + description: Represents the response to a key management parameters provisioning request. + type: object + properties: + skmcUri: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + valServiceId: + type: string + valTgtUe: + $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' + payloadId: + type: string + skmsId: + type: string + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - skmcUri + - valServiceId diff --git a/TS29549_SS_LocationAreaInfoRetrieval.yaml b/TS29549_SS_LocationAreaInfoRetrieval.yaml index a922c05..075a068 100644 --- a/TS29549_SS_LocationAreaInfoRetrieval.yaml +++ b/TS29549_SS_LocationAreaInfoRetrieval.yaml @@ -4,13 +4,13 @@ info: title: SS_LocationAreaInfoRetrieval description: | API for SEAL Location Area Info Retrieval. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.1.0-alpha.2" + version: "1.1.0-alpha.3" externalDocs: description: > - 3GPP TS 29.549 V18.3.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ @@ -45,7 +45,7 @@ paths: description: > The val service area identifier around which which the UE(s) information is requested. schema: - type: string + $ref: 'TS29549_SS_VALServiceAreaConfiguration.yaml#/components/schemas/ValSvcAreaId' - name: range in: query description: > diff --git a/TS29549_SS_LocationReporting.yaml b/TS29549_SS_LocationReporting.yaml index fd9a2c5..b65d413 100644 --- a/TS29549_SS_LocationReporting.yaml +++ b/TS29549_SS_LocationReporting.yaml @@ -4,13 +4,13 @@ info: title: SS_LocationReporting description: | API for SEAL Location Reporting Configuration. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.2.0-alpha.2" + version: "1.2.0-alpha.3" externalDocs: description: > - 3GPP TS 29.549 V18.4.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ @@ -336,7 +336,7 @@ components: type: array minItems: 1 items: - type: string + $ref: 'TS29549_SS_VALServiceAreaConfiguration.yaml#/components/schemas/ValSvcAreaId' description: > Represents the VAL service area ID(s). triggCriteria: @@ -367,7 +367,7 @@ components: type: array minItems: 1 items: - type: string + $ref: 'TS29549_SS_VALServiceAreaConfiguration.yaml#/components/schemas/ValSvcAreaId' description: > Represents the VAL service area ID(s). triggCriteria: @@ -402,7 +402,9 @@ components: properties: subscriptionId: type: string - description: Represents the subscription ID. + description: > + Represents the identifier of the subscription to which the location + reporting notification is related. valTgtUe: $ref: 'TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe' locInfo: diff --git a/TS29549_SS_NetworkResourceAdaptation.yaml b/TS29549_SS_NetworkResourceAdaptation.yaml index 1bfb852..c0a80f9 100644 --- a/TS29549_SS_NetworkResourceAdaptation.yaml +++ b/TS29549_SS_NetworkResourceAdaptation.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.2.0-alpha.4 + version: 1.2.0-alpha.5 title: SS_NetworkResourceAdaptation description: | SS Network Resource Adaptation Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.549 V18.4.0; Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0; Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ @@ -1057,7 +1057,7 @@ paths: summary: Reads an existing Individual BDT Policy Configuration operationId: GetBDTPolicyConfig tags: - - Individual BDT Policy Configuration(Document)Config + - Individual BDT Policy Configuration(Document) responses: '200': description: OK. Resource representation is returned @@ -1088,6 +1088,110 @@ paths: default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + put: + summary: Request the update of an existing Individual BDT Policy Configuration. + operationId: UpdateBDTPolicyConfig + tags: + - Individual BDT Policy Configuration(Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/BdtPolConfig' + responses: + '200': + description: > + OK. Successful case. The targeted Individual BDT Policy Configuration resource + is successfully updated and a representation of the updated resource is returned + in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/BdtPolConfig' + '204': + description: > + No Content. Successful case. The targeted Individual BDT Policy Configuration + resource is successfully updated and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Request the modification of an existing Individual BDT Policy Configuration. + operationId: ModifyBDTPolicyConfig + tags: + - Individual BDT Policy Configuration(Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/BdtPolConfigPatch' + responses: + '200': + description: > + OK. Successful case. The targeted Individual BDT Policy Configuration resource + is successfully modified and a representation of the updated resource is returned + in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/BdtPolConfig' + '204': + description: > + No Content. Successful case. The targeted Individual BDT Policy Configuration + resource is successfully modified and no content is returned in the response body. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + delete: summary: Delete an existing Individual BDT policy Configuration operationId: DeleteBDTPolicyConfig @@ -1117,6 +1221,313 @@ paths: default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + /request-rel-trans: + post: + summary: Enables a service consumer to request reliable transmission service. + operationId: RelTransRequest + tags: + - Reliable Transmission Service Request + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/RelTransReq' + responses: + '204': + description: > + No Content. The reliable transmission service request is successfully received and + processed. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /unif-traff-subscriptions: + post: + summary: Creates a new Individual Unified Traffic Pattern Subscription. + operationId: CreateUnifiedTrafficPatternSubsc + tags: + - Unified Traffic Pattern Subscriptions (Collection) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UnfTrafficSubc' + responses: + '201': + description: Success + content: + application/json: + schema: + $ref: '#/components/schemas/UnfTrafficSubc' + headers: + Location: + description: > + Contains the URI of the created individual unified traffic pattern subscription + resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + callbacks: + UnfTrafficUpdNotification: + '{$request.body#/notifUri}': + post: + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UnfTrafficUpdNotification' + responses: + '204': + description: No Content, Notification was successful + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /unif-traff-subscriptions/{unfTrffSubId}: + parameters: + - name: unfTrffSubId + in: path + description: > + Represents the identifier of the Individual Unified Traffic Pattern Subscription resource. + required: true + schema: + type: string + + get: + summary: Reads an existing Individual Unified Traffic Pattern Subscription. + operationId: GetUnfTrffSubc + tags: + - Individual Unified Traffic Pattern Subscription (Document) + responses: + '200': + description: OK. Resource representation is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/UnfTrafficSubc' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Update an existing Individual Unified Traffic Pattern Subscription. + operationId: UpdateUnfTrffSubc + tags: + - Individual Unified Traffic Pattern Subscription (Document) + requestBody: + description: Updated details of the Unified Traffic Pattern subscription. + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UnfTrafficSubc' + responses: + '200': + description: > + The subscription is updated successfully, and the updated subscription + information returned in the response. + content: + application/json: + schema: + $ref: '#/components/schemas/UnfTrafficSubc' + '204': + description: No Content. The subscription is updated successfully. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Modify an existing Individual Unified Traffic Pattern Subscription. + operationId: ModifyUnfTrffSubc + tags: + - Individual Unified Traffic Pattern Subscription (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/UnfTrafficSubcPatch' + responses: + '200': + description: > + The individual Unified Traffic Pattern subscription is + modified successfully, and the representation of the modified resource + is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/UnfTrafficSubcPatch' + '204': + description: No Content. The subscription is modified successfully. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Delete an existing Individual Unified Traffic Pattern Subscription + operationId: DeleteUnfTrffSubc + tags: + - Individual Unified Traffic Pattern Subscription (Document) + responses: + '204': + description: No Content. Resource was successfully deleted + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + components: securitySchemes: oAuth2ClientCredentials: @@ -1453,8 +1864,12 @@ components: $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' grantTimeWindow: $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' - geoArea: + desiredGeoArea: $ref: '#/components/schemas/GeoArea' + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + policyGuidance: + $ref: '#/components/schemas/PolicyGuidance' bdtPolRefId: type: string notifUri: @@ -1467,8 +1882,32 @@ components: required: - valServId - notifUri + - dataVolUe + - desiredTimeWindow + - desiredGeoArea - + BdtPolConfigPatch: + description: > + Represents the parameters to request modification of the BDT Policy configuration. + type: object + properties: + dataVolUe: + $ref: 'TS29122_CommonData.yaml#/components/schemas/UsageThreshold' + desiredTimeWindow: + $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow' + desiredGeoArea: + $ref: '#/components/schemas/GeoArea' + expTime: + $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec' + PolicyGuidance: + description: > + Represents the list of Policy Guidance. + type: object + properties: + policyType: + $ref: '#/components/schemas/PolicyType' + cost: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' GeoArea: description: Represents a Geographical area. type: object @@ -1504,6 +1943,144 @@ components: - notifId - bdtConfigId + UnfTrafficSubc: + description: Represents the request parameters for Unified Traffic Pattern subscription. + type: object + properties: + mgmtSubs: + type: object + additionalProperties: + $ref: '#/components/schemas/ManagementSubc' + minProperties: 1 + description: > + Contains contains the unified traffic pattern subscription(s). + The key of the map is any unique string encoded value. + notifUri: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - mgmtSubs + - notifUri + + UnfTrafficSubcPatch: + description: Represents the request parameters to update Unified Traffic Pattern subscription. + type: object + properties: + mgmtSubs: + type: object + additionalProperties: + $ref: '#/components/schemas/ManagementSubc' + minProperties: 1 + description: > + Contains contains the unified traffic pattern subscription(s). + The key of the map is any unique string encoded value. + notifUri: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' + + ManagementSubc: + description: Represents the Unified Traffic Pattern subscription details. + type: object + properties: + valServId: + type: string + valUeIds: + type: array + items: + type: string + minItems: 1 + traffPatInd: + type: array + items: + $ref: '#/components/schemas/TrafficPatternIndication' + minItems: 1 + traffPatConfig: + $ref: '#/components/schemas/TrafficPatternConfig' + required: + - valServId + - valUeIds + - traffPatInd + + TrafficPatternConfig: + description: Represents the traffic pattern configuration parameters. + type: object + properties: + scheds: + type: array + items: + $ref: 'TS29122_CpProvisioning.yaml#/components/schemas/ScheduledCommunicationTime' + minItems: 1 + expTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + stationInd: + type: boolean + default: false + + UnfTrafficUpdNotification: + description: Represents a notification on update related to unified traffic pattern. + type: object + properties: + valUeIds: + type: array + items: + type: string + minItems: 1 + sched: + $ref: 'TS29122_CpProvisioning.yaml#/components/schemas/ScheduledCommunicationTime' + stationInd: + type: boolean + default: false + cause: + type: string + required: + - valUeIds + + + RelTransReq: + description: Represents the parameters to request reliable transmission service. + type: object + properties: + requestorId: + type: string + appDescs: + type: array + items: + $ref: '#/components/schemas/AppTraffDesc' + minItems: 2 + valUeId: + type: string + valAddrInfo: + $ref: '#/components/schemas/ValUeAddrInfo' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - requestorId + + AppTraffDesc: + description: Represents the application traffic descriptor. + type: object + properties: + connInfo: + $ref: 'TS29548_SDD_Transmission.yaml#/components/schemas/ConnInfo' + transProtoc: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/TransportProtocol' + required: + - connInfo + + ValUeAddrInfo: + description: Represents VAL UE address information. + type: object + properties: + valUeIpv4Addr: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr' + valUeIpv6Addr: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Addr' + port: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Port' + oneOf: + - required: [valUeIpv4Addr] + - required: [valUeIpv6Addr] + # Simple data types and Enumerations @@ -1579,3 +2156,39 @@ components: - 5GS: Indicates that the network system is 5GS. - EPS: Indicates that the network system is EPS. - 5GS_AND_EPS: Indicates that the network system is 5GS and EPS. + + PolicyType: + anyOf: + - type: string + enum: + - LOWEST_COST + - HIGH_THROUGHPUT_WITH_COST + - 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: | + Indicates the Policy types. + Possible values are: + - LOWEST_COST: Indicates that the policy guidance is to consider lowest cost. + - HIGH_THROUGHPUT_WITH_COST: Indicates that the policy guidance is to consider highest + throughput. + + TrafficPatternIndication: + anyOf: + - type: string + enum: + - TRAFFIC_PATTERN_MANAGE + - TRAFFIC_PATTERN_MONITOR + - NETWORK_PARAM_COORDINATION + - 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: | + Represents the unified traffic pattern indication requests. + Possible values are: + - TRAFFIC_PATTERN_MANAGE: Indicates management of the UE unified traffic pattern request. + - TRAFFIC_PATTERN_MONITOR: Indicates monitoring of the UE unified traffic pattern. + - NETWORK_PARAM_COORDINATION: Indicates network parameter coordination by NRM with 5GC. diff --git a/TS29549_SS_NetworkResourceMonitoring.yaml b/TS29549_SS_NetworkResourceMonitoring.yaml index 2b4ea67..008a47a 100644 --- a/TS29549_SS_NetworkResourceMonitoring.yaml +++ b/TS29549_SS_NetworkResourceMonitoring.yaml @@ -3,12 +3,12 @@ info: title: SS_NetworkResourceMonitoring description: | API for SEAL Network Resource Monitoring. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.1.0-alpha.2" + version: "1.1.0-alpha.3" externalDocs: description: > - 3GPP TS 29.549 V18.1.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ security: @@ -183,12 +183,8 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' - '411': - $ref: 'TS29122_CommonData.yaml#/components/responses/411' - '413': - $ref: 'TS29122_CommonData.yaml#/components/responses/413' - '415': - $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': diff --git a/TS29549_SS_VALServiceAreaConfiguration.yaml b/TS29549_SS_VALServiceAreaConfiguration.yaml index 9d37da9..52a406b 100644 --- a/TS29549_SS_VALServiceAreaConfiguration.yaml +++ b/TS29549_SS_VALServiceAreaConfiguration.yaml @@ -4,13 +4,13 @@ info: title: SS_VALServiceAreaConfiguration description: | API for SEAL VAL Service Area Configuration Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.0.0-alpha.2" + version: "1.0.0-alpha.3" externalDocs: description: > - 3GPP TS 29.549 V18.4.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ @@ -40,7 +40,7 @@ paths: schema: type: array items: - type: string + $ref: '#/components/schemas/ValSvcAreaId' minItems: 1 - name: supp-feats in: query @@ -63,12 +63,8 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' - '411': - $ref: 'TS29122_CommonData.yaml#/components/responses/411' - '413': - $ref: 'TS29122_CommonData.yaml#/components/responses/413' - '415': - $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': @@ -333,12 +329,8 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' - '411': - $ref: 'TS29122_CommonData.yaml#/components/responses/411' - '413': - $ref: 'TS29122_CommonData.yaml#/components/responses/413' - '415': - $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': @@ -496,6 +488,7 @@ components: valSvcAreaId: $ref: '#/components/schemas/ValSvcAreaId' locations: + type: array description: Represents the locations associated with the VAL service area. minItems: 1 items: @@ -509,6 +502,7 @@ components: type: object properties: valSvcAreas: + type: array description: Represents the VAL service area(s). minItems: 1 items: @@ -523,6 +517,7 @@ components: type: object properties: valSvcAreas: + type: array description: Represents the requested VAL service area(s). minItems: 1 items: @@ -535,10 +530,11 @@ components: type: object properties: valSvcAreaIds: + type: array description: Represents the identifier(s) of the successfully handled VAL service area(s). minItems: 1 items: - type: string + $ref: '#/components/schemas/ValSvcAreaId' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: @@ -571,6 +567,7 @@ components: type: object properties: events: + type: array description: Represents the subscribed VAL service area change event(s). minItems: 1 items: @@ -592,10 +589,11 @@ components: event: $ref: '#/components/schemas/ValServiceAreaEvent' valSvcAreaIds: + type: array description: Represents the VAL service area ID(s) associated with the event. minItems: 1 items: - type: string + $ref: '#/components/schemas/ValSvcAreaId' required: - event - valSvcAreaIds @@ -619,15 +617,17 @@ components: event: $ref: '#/components/schemas/ValServiceAreaEvent' valSvcAreas: + type: array description: Represents the VAL service area(s) associated with the event. minItems: 1 items: $ref: '#/components/schemas/ValServiceArea' valSvcAreaIds: + type: array description: Represents the VAL service area(s) associated with the event. minItems: 1 items: - type: string + $ref: '#/components/schemas/ValSvcAreaId' required: - event diff --git a/TS29549_SS_VALServiceData.yaml b/TS29549_SS_VALServiceData.yaml index e87fab9..87b9fe7 100644 --- a/TS29549_SS_VALServiceData.yaml +++ b/TS29549_SS_VALServiceData.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: SS_VALServiceData + version: 1.0.0-alpha.2 description: | API for VAL Service Data. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: "1.0.0-alpha.1" externalDocs: description: > - 3GPP TS 29.549 V18.2.0 Service Enabler Architecture Layer for Verticals (SEAL); + 3GPP TS 29.549 V18.5.0 Service Enabler Architecture Layer for Verticals (SEAL); Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/ @@ -28,14 +28,14 @@ servers: paths: /val-servdata: get: - summary: Retrieve the VAL service data. - operationId: RetrieveValServiceData + summary: Retrieve VAL service data. + operationId: RetrieveValServData tags: - - VAL Service Data Sets + - VAL Service Data Sets (Collection) parameters: - name: val-tgt-ues in: query - description: Identifying the list of the target VAL UE(s) or VAL user(s). + description: Identifies the list of the target VAL UE(s) or VAL user(s). required: false schema: type: array @@ -44,7 +44,7 @@ paths: minItems: 1 - name: val-service-ids in: query - description: Identifying the list of the target VAL service(s). + description: Identifies the list of the target VAL service(s). required: false schema: type: array @@ -53,13 +53,14 @@ paths: minItems: 1 - name: supp-feats in: query - description: To filter irrelevant responses related to unsupported features. + description: > + Contains the list of supported features among the ones defined in clause 7.3.2.7.. required: false schema: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' responses: '200': - description: Represents the requested VAL service data. + description: OK. The requested VAL Service Data shall be returned. content: application/json: schema: @@ -98,21 +99,22 @@ components: schemas: ValServDataResp: - description: Represents the container for the requested VAL service data. + description: Represents the response to a VAL service data retrieval request. type: object properties: valServData: type: array items: $ref: '#/components/schemas/ValServiceData' - minItems: 1 + minItems: 0 suppFeats: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - valServData ValServiceData: description: > - Represents the VAL service data associated with VAL user ID(s)/VAL UE ID(s) - and/or VAL service ID(s). + Represents the VAL service data. type: object properties: valTgtUe: @@ -127,7 +129,6 @@ components: in the "valTgtUe" attribute. valServSpecInfo: type: string - description: Contains the VAL service specific information. required: - valTgtUe - valServIds diff --git a/TS29551_Nnef_PFDmanagement.yaml b/TS29551_Nnef_PFDmanagement.yaml index 4955047..b123e22 100644 --- a/TS29551_Nnef_PFDmanagement.yaml +++ b/TS29551_Nnef_PFDmanagement.yaml @@ -1,14 +1,14 @@ openapi: 3.0.0 info: title: Nnef_PFDmanagement Service API - version: 1.3.0-alpha.2 + version: 1.3.0-alpha.3 description: | Packet Flow Description Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. # externalDocs: - description: 3GPP TS 29.551 v18.3.0, 5G System; Packet Flow Description Management Service + description: 3GPP TS 29.551 v18.4.0, 5G System; Packet Flow Description Management Service url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.551/' # servers: @@ -483,6 +483,8 @@ components: description: Indicates an FQDN or a regular expression as a domain name matching criteria. dnProtocol: $ref: 'TS29122_PfdManagement.yaml#/components/schemas/DomainNameProtocol' + sourceNfType: + $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType' PfdDataForApp: description: Represents the PFDs for an application identifier. diff --git a/TS29556_Neasdf_BaselineDNSPattern.yaml b/TS29556_Neasdf_BaselineDNSPattern.yaml index 46976b3..1c7087a 100644 --- a/TS29556_Neasdf_BaselineDNSPattern.yaml +++ b/TS29556_Neasdf_BaselineDNSPattern.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.1.0-alpha.2' + version: '1.1.0-alpha.3' title: 'Neasdf_BaselineDNSPattern' description: | EASDF Baseline DNS Pattern Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.556 V18.1.0; 5G System; Edge Application Server Discovery Services; Stage 3 + description: 3GPP TS 29.556 V18.5.0; 5G System; Edge Application Server Discovery Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.556/' servers: @@ -145,7 +145,10 @@ paths: $ref: '#/components/schemas/BaseDnsPatternCreatedData' headers: Location: - description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/neasdf-baselinednspattern//base-dns-patterns/{smfId}/{smfImplementationSegmentPaths}' + description: > + 'Contains the URI of the newly created resource, according to the structure: + {apiRoot}/neasdf-baselinednspattern// + base-dns-patterns/{smfId}/{smfImplementationSegmentPaths}' required: true schema: type: string @@ -260,13 +263,15 @@ components: label: type: string baseDnsMdtList: - description: map of baseline DNS message detection templates where a valid JSON string serves as key + description: > + map of baseline DNS message detection templates where a valid JSON string serves as key type: object additionalProperties: $ref: '#/components/schemas/BaselineDnsMdt' minProperties: 1 baseDnsAitList: - description: map of Baseline DNS action information Template where a valid JSON string serves as key + description: > + map of Baseline DNS action information Template where a valid JSON string serves as key type: object additionalProperties: $ref: '#/components/schemas/BaselineDnsAit' @@ -290,13 +295,15 @@ components: label: type: string dnsQueryMdtList: - description: map of DNS query message detection templates where a valid JSON string serves as key + description: > + map of DNS query message detection templates where a valid JSON string serves as key type: object additionalProperties: $ref: 'TS29556_Neasdf_DNSContext.yaml#/components/schemas/DnsQueryMdt' minProperties: 1 dnsRspMdtList: - description: map of DNS response message detection templates where a valid JSON string serves as key + description: > + map of DNS response message detection templates where a valid JSON string serves as key type: object additionalProperties: $ref: 'TS29556_Neasdf_DNSContext.yaml#/components/schemas/DnsRspMdt' diff --git a/TS29556_Neasdf_DNSContext.yaml b/TS29556_Neasdf_DNSContext.yaml index 130ce88..55d87ba 100644 --- a/TS29556_Neasdf_DNSContext.yaml +++ b/TS29556_Neasdf_DNSContext.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.1.0-alpha.4' + version: '1.1.0-alpha.5' title: 'Neasdf_DNSContext' description: | EASDF DNS Context Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.556 V18.4.0; 5G System; Edge Application Server Discovery Services; Stage3 + description: 3GPP TS 29.556 V18.5.0; 5G System; Edge Application Server Discovery Services; Stage3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.556/ servers: @@ -88,7 +88,9 @@ paths: $ref: '#/components/schemas/DnsContextCreatedData' headers: Location: - description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/neasdf-dnscontext//dns-contexts/{dnsContextId}' + description: > + 'Contains the URI of the newly created resource, according to the structure: + {apiRoot}/neasdf-dnscontext//dns-contexts/{dnsContextId}' required: true schema: type: string @@ -373,7 +375,8 @@ components: precedence: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' dnsQueryMdtList: - description: map of DNS query message detection templates where a valid JSON string serves as key + description: > + map of DNS query message detection templates where a valid JSON string serves as key type: object additionalProperties: $ref: '#/components/schemas/DnsQueryMdt' @@ -384,7 +387,8 @@ components: $ref: '#/components/schemas/BaselineDnsQueryMdtInfo' minItems: 1 dnsRspMdtList: - description: map of DNS response message detection templates where a valid JSON string serves as key + description: > + map of DNS response message detection templates where a valid JSON string serves as key type: object additionalProperties: $ref: '#/components/schemas/DnsRspMdt' @@ -457,6 +461,11 @@ components: items: $ref: '#/components/schemas/Ipv6PrefixRange' minItems: 1 + dnsServerSrcAddrList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr' + minItems: 1 required: - mdtId @@ -710,6 +719,7 @@ components: - FORWARD - DISCARD - RESPOND + - SEND_ANOTHER_DNS_QUERY - type: string description: > This string provides forward-compatibility with future diff --git a/TS29558_Eecs_EASInfoManagement.yaml b/TS29558_Eecs_EASInfoManagement.yaml new file mode 100644 index 0000000..b1cf26e --- /dev/null +++ b/TS29558_Eecs_EASInfoManagement.yaml @@ -0,0 +1,214 @@ +openapi: 3.0.0 + +info: + title: EAS Information Management + version: 1.0.0-alpha.1 + description: | + EAS Information Management Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.558 V18.5.0; Enabling Edge Applications; + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/eecs-eim/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122 + +paths: + /bindings: + get: + summary: Get EAS information. + operationId: GetEASInfo + tags: + - Get EAS information + parameters: + - name: requestor-id + in: query + description: Represents the Identifier of the service consumer. + required: true + schema: + type: string + - name: app-group-id + in: query + description: Represents the Application group identifier. + required: true + schema: + type: string + - name: eas-id + in: query + description: EAS Identifier. + required: true + schema: + type: string + - name: supp-feats + in: query + description: Contains the list of supported feature(s). + required: false + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + responses: + '200': + description: OK. Resource representation is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/CommonEASBindResp' + '204': + description: > + No Content. There is no Common EAS Binding Information corresponding to the received + query parameters. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + post: + summary: Request to store the Common EAS information. + operationId: StoreEasInfo + tags: + - Store EAS Information + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/CommonEASBindReq' + responses: + '201': + description: > + Created. The Common EAS Binding information is successfully stored. + content: + application/json: + schema: + $ref: '#/components/schemas/CommonEASBindResp' + headers: + Location: + description: > + Contains the URI of the created Common EAS Binding information resource. + required: true + schema: + type: string + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + description: > + Forbidden. There is an existing Common EAS information stored. + content: + application/json: + schema: + $ref: '#/components/schemas/ProblemDetailsEIMExt' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + +components: + + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + CommonEASBindReq: + description: > + Represents the information elements for the Common EAS information + type: object + properties: + requestorId: + type: string + binding: + $ref: '#/components/schemas/CommonEASBinding' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - requestorId + - binding + + CommonEASBindResp: + description: > + Represents the response information elements for the Common EAS information. + type: object + properties: + binding: + $ref: '#/components/schemas/CommonEASBinding' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + required: + - binding + + CommonEASBinding: + description: Represents the common EAS Binding information. + type: object + properties: + appGroupId: + type: string + easId: + type: string + easEndpoints: + type: array + items: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + minItems: 1 + eesEndpoint: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + ednInfo: + $ref: 'TS29558_Eecs_EESRegistration.yaml#/components/schemas/EDNInfo' + required: + - appGroupId + - easId + - easEndpoints + + ProblemDetailsEIMExt: + description: > + Extends ProblemDetails to also include existing common EAS binding information for the + application group. + allOf: + - $ref: 'TS29122_CommonData.yaml#/components/schemas/ProblemDetails' + - $ref: '#/components/schemas/CommonEASBinding' diff --git a/TS29558_Eecs_TargetEESDiscovery.yaml b/TS29558_Eecs_TargetEESDiscovery.yaml index 8b26c35..3ae55c5 100644 --- a/TS29558_Eecs_TargetEESDiscovery.yaml +++ b/TS29558_Eecs_TargetEESDiscovery.yaml @@ -3,12 +3,12 @@ info: title: ECS Target EES Discovery API description: | API for Target EES Discovery. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: 1.1.0-alpha.3 + version: 1.1.0-alpha.4 externalDocs: description: > - 3GPP TS 29.558 V18.4.0 Enabling Edge Applications; + 3GPP TS 29.558 V18.5.0 Enabling Edge Applications; Application Programming Interface (API) specification; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ security: @@ -24,7 +24,7 @@ servers: paths: /ees-profiles: get: - summary: Read all EES Profiles + summary: Read all the targeted Enabler Server Profiles operationId: GetEESProfiles tags: - EES Profiles (Collection) @@ -32,19 +32,21 @@ paths: parameters: - name: ees-id in: query - description: Unique identifier of the S-EES. + description: Unique identifier of the source Enabler Server. required: true schema: type: string - name: eas-id in: query - description: Unique identifier of the S-EAS. + description: Unique identifier of the source Application Server. required: true schema: type: string - name: target-dnai in: query - description: The DNAI information associated with the potential T-EES(s) and/or T-EAS(s). + description: > + The DNAI information associated with the potential target Enabler Server(s) + and/or target Application Server(s). required: false schema: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnai' @@ -112,7 +114,8 @@ paths: type: string responses: '200': - description: The EDN configuration and the T-EES information determined by ECS. + description: > + The EDN configuration and the Enabler Server information determined by the ECS. content: application/json: schema: diff --git a/TS29558_Eees_ACRManagementEvent.yaml b/TS29558_Eees_ACRManagementEvent.yaml index ed431e3..2df099f 100644 --- a/TS29558_Eees_ACRManagementEvent.yaml +++ b/TS29558_Eees_ACRManagementEvent.yaml @@ -4,13 +4,13 @@ info: title: EES ACR Management Event_API description: | API for EES ACR Management Event. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: 1.1.0-alpha.5 + version: 1.1.0-alpha.6 externalDocs: description: > - 3GPP TS 29.558 V18.4.0 Enabling Edge Applications; + 3GPP TS 29.558 V18.5.0 Enabling Edge Applications; Application Programming Interface (API) specification; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ @@ -569,6 +569,8 @@ components: $ref: '#/components/schemas/ACRParameters' acId: type: string + ueId: + $ref: '#/components/schemas/TargetUeIdentification' selACRScen: type: array items: @@ -616,6 +618,8 @@ components: properties: gpsi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + edgeUeId: + type: string intGrpId: $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId' extGrpId: @@ -624,6 +628,7 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr' oneOf: - required: [gpsi] + - required: [edgeUeId] - required: [intGrpId] - required: [extGrpId] - required: [ueIpAddr] @@ -754,6 +759,8 @@ components: minItems: 1 svcArea: $ref: 'TS29558_Eecs_EESRegistration.yaml#/components/schemas/ServiceArea' + required: + - easId # # ENUMERATIONS DATA TYPES diff --git a/TS29558_Eees_ACRParameterInformation.yaml b/TS29558_Eees_ACRParameterInformation.yaml index 7088aa0..1d2f250 100644 --- a/TS29558_Eees_ACRParameterInformation.yaml +++ b/TS29558_Eees_ACRParameterInformation.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: EES ACR Parameters Information Service - version: 1.0.0-alpha.2 + version: 1.0.0-alpha.3 description: | EES ACR Parameters Information Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.558 V18.3.0; Enabling Edge Applications; + 3GPP TS 29.558 V18.5.0; Enabling Edge Applications; Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ @@ -39,18 +39,9 @@ paths: schema: $ref: '#/components/schemas/ACRParamsInfo' responses: - '200': - description: > - The ACR parameters information is successfully received and the content of these ACR - parameters information is returned in the response body - content: - application/json: - schema: - $ref: '#/components/schemas/ACRParamsInfo' '204': description: > - No Content. The ACR parameter information is successfully received and no content is - returned in the response body. + No Content. The ACR parameter information is successfully received and processed. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': @@ -94,25 +85,22 @@ components: Represents the ACR parameters information. type: object properties: - eesId: + requestorId: type: string - description: Represents the EES ID. eecId: type: string - description: Represents the EEC ID. acId: type: string - description: Represents the AC ID. - sEasEndPoint: + sAsEndPoint: $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' - tEasEndPoint: + tAsEndPoint: $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' acrParams: $ref: 'TS29558_Eees_ACRManagementEvent.yaml#/components/schemas/ACRParameters' required: - - eesId + - requestorId - eecId - acId - - sEasEndPoint - - tEasEndPoint + - sAsEndPoint + - tAsEndPoint - acrParams diff --git a/TS29558_Eees_AppClientInformation.yaml b/TS29558_Eees_AppClientInformation.yaml index fdf5ead..257129a 100644 --- a/TS29558_Eees_AppClientInformation.yaml +++ b/TS29558_Eees_AppClientInformation.yaml @@ -3,12 +3,12 @@ info: title: EES Application Client Information_API description: | API for EES Application Client Information. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: 1.1.0-alpha.2 + version: 1.1.0-alpha.3 externalDocs: description: > - 3GPP TS 29.558 V18.1.0 Enabling Edge Applications; + 3GPP TS 29.558 V18.5.0 Enabling Edge Applications; Application Programming Interface (API) specification; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ security: @@ -342,6 +342,13 @@ components: $ref: 'TS29122_CommonData.yaml#/components/schemas/WebsockNotifConfig' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + trigCondParams: + type: array + items: + $ref: '#/components/schemas/TrigCondParams' + minItems: 1 + description: > + Represents the notification triggering conditions of the AC information subscription. required: - easId @@ -361,6 +368,13 @@ components: $ref: 'TS29523_Npcf_EventExposure.yaml#/components/schemas/ReportingInformation' notificationDestination: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' + trigCondParams: + type: array + items: + $ref: '#/components/schemas/TrigCondParams' + minItems: 1 + description: > + Represents the notification triggering conditions of the AC information subscription. ACFilters: type: object @@ -401,6 +415,8 @@ components: description: List of UE identifiers hosting the AC. locInfs: $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' + easBundInd: + $ref: '#/components/schemas/EASBdlInd' ACInfoNotification: type: object @@ -440,3 +456,52 @@ components: $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G' required: - acProfs + + EASBdlInd: + type: object + description: Represents the EAS bundle indication information. + properties: + bdlType: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/BdlType' + bdlId: + type: string + description: Indicates a bundle ID. + easBdlReqs: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EASBdlReqs' + parBundDet: + type: boolean + default: false + description: > + Set to true to indicate that the partial bundle determination is requested. + Set to false to indicate that the partial bundle determination is not requested. + Set to false or omitted otherwise. + anyOf: + - required: [bdlType] + - required: [bdlId] + - required: [easBdlReqs] + - required: [parBundDet] + + + TrigCondParams: + anyOf: + - type: string + enum: + - ANALYTICS_INFO + - EEC_REGISTRATION + - EAS_DISCOVERY + - UNSPECIFIED + - 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: | + Represents the trigger condition parameter. + Possible values are: + - ANALYTICS_INFO: Indicates that the notification triggering condition is the analytics + information. + - EEC_REGISTRATION: Indicates that the notification triggering condition is the EEC + registration. + - EAS_DISCOVERY: Indicates that the notification triggering condition is the EAS + discovery. + - UNSPECIFIED: Indicates that the triggering conditions are unspecified. diff --git a/TS29558_Eees_CommonEASAnnouncement.yaml b/TS29558_Eees_CommonEASAnnouncement.yaml index b5f82aa..318855d 100644 --- a/TS29558_Eees_CommonEASAnnouncement.yaml +++ b/TS29558_Eees_CommonEASAnnouncement.yaml @@ -1,16 +1,16 @@ openapi: 3.0.0 info: - title: EES Announce Common EAS Information Service - version: 1.0.0-alpha.2 + title: EES Common EAS Announcement Service + version: 1.0.0-alpha.3 description: | - EES Announce Common EAS Information Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + EES Common EAS Announcement Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.558 V18.4.0; Enabling Edge Applications; + 3GPP TS 29.558 V18.5.0; Enabling Edge Applications; Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ @@ -19,7 +19,7 @@ security: - oAuth2ClientCredentials: [] servers: - - url: '{apiRoot}/eees-common-eas/v1' + - url: '{apiRoot}/eees-cea/v1' variables: apiRoot: default: https://example.com @@ -89,16 +89,18 @@ components: requestorId: type: string description: Represents the identifier of the announcing EES sending the request. + requestorEndPt: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' easId: type: string description: Represents the EAS ID of the selected common EAS + easEndPt: + $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' appGrpId: type: string - description: Represents the application group identifier. - endPt: - $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' + description: Represents the application group identifier. required: - requestorId - easId + - easEndPt - appGrpId - - endPt diff --git a/TS29558_Eees_EASRegistration.yaml b/TS29558_Eees_EASRegistration.yaml index 5b164d1..70bc027 100644 --- a/TS29558_Eees_EASRegistration.yaml +++ b/TS29558_Eees_EASRegistration.yaml @@ -4,13 +4,13 @@ info: title: EES EAS Registration_API description: | API for EAS Registration. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: 1.1.0-alpha.5 + version: 1.1.0-alpha.6 externalDocs: description: > - 3GPP TS 29.558 V18.4.0 Enabling Edge Applications; + 3GPP TS 29.558 V18.5.0 Enabling Edge Applications; Application Programming Interface (API) specification; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ @@ -303,6 +303,8 @@ components: description: Identifier of the EAS. endPt: $ref: '#/components/schemas/EndPoint' + allowedPlmnId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnIdNid' easBdlInfos: type: array items: diff --git a/TS29558_Eees_EECContextRelocation.yaml b/TS29558_Eees_EECContextRelocation.yaml index a2f9f18..587c435 100644 --- a/TS29558_Eees_EECContextRelocation.yaml +++ b/TS29558_Eees_EECContextRelocation.yaml @@ -1,19 +1,23 @@ openapi: 3.0.0 + info: title: EES EEC Context Relocation API + version: 1.1.0-alpha.4 description: | API for EEC Context Relocation. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: 1.1.0-alpha.3 + externalDocs: description: > - 3GPP TS 29.558 V18.2.0 Enabling Edge Applications; + 3GPP TS 29.558 V18.5.0 Enabling Edge Applications; Application Programming Interface (API) specification; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ + security: - {} - oAuth2ClientCredentials: [] + servers: - url: '{apiRoot}/eees-eeccontextreloc/v1' variables: @@ -24,11 +28,10 @@ servers: paths: /eec-contexts: post: - summary: Push EEC Context information + summary: Push EEC Context information. operationId: PushEecContexts tags: - - Collection of EEC contexts (Collection) - description: S-EES transfers the EEC context information to T-EES. + - EEC contexts (Collection) requestBody: required: true content: @@ -38,14 +41,14 @@ paths: responses: '200': description: > - OK. The EEC context has been successfully transferred to the T-EES and - the EEC is implicitly registered. + OK. The EEC context has been successfully pushed to the EES and related + information is returned in the response body. content: application/json: schema: $ref: '#/components/schemas/EECContextPushRes' '204': - description: No Content. The EEC context has been successfully transferred to the T-EES. + description: No Content. The EEC context has been successfully pushed to the EES. '400': $ref: 'TS29122_CommonData.yaml#/components/responses/400' '401': @@ -68,16 +71,16 @@ paths: $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' + get: - summary: Pull EEC Context information + summary: Pull EEC Context information. operationId: PullEecContexts tags: - - Collection of EEC contexts (Collection) - description: T-EES pulls an EEC context information from S-EES. + - EEC contexts (Collection) parameters: - name: ees-id in: query - description: Unique identifier of the requesting EES. + description: Unique identifier of the requesting entity. required: true schema: type: string @@ -96,8 +99,8 @@ paths: responses: '200': description: > - OK (The EEC context information matching the input parameters in the request - is returned by the S-EES). + OK. The EEC context information matching the query parameters in the request + shall be returned. content: application/json: schema: @@ -151,7 +154,7 @@ components: properties: easId: type: string - description: Identifier of the EAS providing the application services. + description: Identifier of the Application Server providing the application services. endPt: $ref: 'TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint' acId: @@ -174,7 +177,7 @@ components: properties: eesId: type: string - description: Identifier of the S-EES pushing the EEC context information. + description: Identifier of the entity that is pushing the EEC context information. eecCntx: $ref: '#/components/schemas/EECContext' tgtEas: @@ -182,8 +185,8 @@ components: acrScenariosSelReq: type: boolean description: > - Set to true if the EEC indicates the T-EES to select the ACR scenarisos. - Set to false if the T-EES is not required to select the ACR scenarios. + Set to true if the EEC indicates to select the ACR scenarisos. + Set to false if it is not required to select the ACR scenarios. The default value when omitted is false. required: - eesId @@ -200,7 +203,6 @@ components: items: $ref: 'TS29558_Eecs_EESRegistration.yaml#/components/schemas/ACRScenario' minItems: 1 - description: The list of ACR scenarios selected by T-EES. ImplicitRegDetails: type: object diff --git a/TS29558_Eees_TrafficInfluenceEAS.yaml b/TS29558_Eees_TrafficInfluenceEAS.yaml new file mode 100644 index 0000000..c164277 --- /dev/null +++ b/TS29558_Eees_TrafficInfluenceEAS.yaml @@ -0,0 +1,302 @@ +openapi: 3.0.0 + +info: + title: EES Application Traffic Influence Service + version: 1.0.0-alpha.1 + description: | + EES Application Traffic Influence Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: > + 3GPP TS 29.558 V18.5.0; Enabling Edge Applications; + Application Programming Interface (API) specification; Stage 3. + url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ + +security: + - {} + - oAuth2ClientCredentials: [] + +servers: + - url: '{apiRoot}/eees-tie/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122 + +paths: + /instances: + post: + summary: Create application traffic influence trigger from EAS. + operationId: CreateTraffInfluInstance + tags: + - Traffic Influence (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AppTrafficInfluence' + responses: + '201': + description: Create a new individual Application Traffic Influence Instance. + headers: + Location: + description: Contains the URI of the newly created resource. + required: true + schema: + type: string + content: + application/json: + schema: + $ref: '#/components/schemas/AppTrafficInfluence' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + /instances/{instanceId}: + parameters: + - name: instanceId + in: path + description: Instance Id. + required: true + schema: + type: string + + get: + summary: Read an Individual Application Traffic Influence Instance. + operationId: GetIndTraffInfluInstance + tags: + - Individual ACR Management Events Subscription (Document) + responses: + '200': + description: OK. The Individual Application Traffic Influence Instance is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/AppTrafficInfluence' + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29122_CommonData.yaml#/components/responses/406' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + put: + summary: Update an Individual Application Traffic Influence Instance. + operationId: UpdateIndTraffInfluInstance + tags: + - Individual Traffic Influence Instance (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AppTrafficInfluence' + responses: + '200': + description: > + The Individual Application Traffic Influence Instance is successfully modified and the + representation of the updated resource is returned in the response body. + content: + application/json: + schema: + $ref: '#/components/schemas/AppTrafficInfluence' + '204': + description: No Content. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + patch: + summary: Modify an Individual Application Traffic Influence Instance. + operationId: ModifyIndTraffInfluInstance + tags: + - Individual Traffic Influence Instance (Document) + requestBody: + required: true + content: + application/merge-patch+json: + schema: + $ref: '#/components/schemas/AppTrafficInfluencePatch' + responses: + '200': + description: > + The Individual Application Traffic Influence Instance is successfully modified and the + representation of the updated resource is returned in the response. + content: + application/json: + schema: + $ref: '#/components/schemas/AppTrafficInfluence' + '204': + description: No Content. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29122_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29122_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29122_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + delete: + summary: Delete an Individual Traffic Influence Instance. + operationId: DeleteIndTraffInfluInstance + tags: + - Individual Traffic Influence Instance (Document) + responses: + '204': + description: > + The Individual Traffic Influence Instance is successfully deleted. + '307': + $ref: 'TS29122_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29122_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29122_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29122_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29122_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29122_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29122_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29122_CommonData.yaml#/components/responses/500' + '503': + $ref: 'TS29122_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29122_CommonData.yaml#/components/responses/default' + + +components: + + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{tokenUrl}' + scopes: {} + + schemas: + AppTrafficInfluence: + description: > + Represents the application traffic influence information. + type: object + properties: + requestorId: + type: string + description: Contains the identifier of the service consumer that is sending the request. + tgtUes: + type: array + items: + $ref: 'TS29558_Eees_ACRManagementEvent.yaml#/components/schemas/TargetUeIdentification' + minItems: 1 + anyUe: + type: boolean + description: > + Indicates whether the request applies to any UE. + true indicates that the request applies to any UE. + False indicates that the request does not apply to any UE. + The default value when this attribute is omitted is false. + oneOf: + - required: [anyUe] + - required: [tgtUes] + + AppTrafficInfluencePatch: + description: > + Represents the update of application traffic influence information. + type: object + properties: + tgtUes: + type: array + items: + $ref: 'TS29558_Eees_ACRManagementEvent.yaml#/components/schemas/TargetUeIdentification' + minItems: 1 + anyUe: + type: boolean + description: > + Indicates whether the request applies to any UE. + true indicates that the request applies to any UE. + False indicates that the request does not apply to any UE. + not: + required: [anyUe, tgtUes] diff --git a/TS29558_Eees_UEIdentifier.yaml b/TS29558_Eees_UEIdentifier.yaml index cb55ded..60239c8 100644 --- a/TS29558_Eees_UEIdentifier.yaml +++ b/TS29558_Eees_UEIdentifier.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: EES UE Identifier Service - version: 1.1.0-alpha.2 + version: 1.1.0-alpha.3 description: | EES UE Identifier Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.558 V18.4.0; Enabling Edge Applications; + 3GPP TS 29.558 V18.5.0; Enabling Edge Applications; Application Programming Interface (API) specification; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.558/ @@ -178,6 +178,10 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' ipAddr: $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr' + appPortId: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Port' + portNumber: + $ref: 'TS29122_CommonData.yaml#/components/schemas/Port' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' anyOf: diff --git a/TS29562_Nhss_imsSDM.yaml b/TS29562_Nhss_imsSDM.yaml index 6dfca60..d047e48 100644 --- a/TS29562_Nhss_imsSDM.yaml +++ b/TS29562_Nhss_imsSDM.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.2.0-alpha.1' + version: '1.2.0-alpha.2' title: 'Nhss_imsSDM' description: | Nhss Subscriber Data Management Service for IMS. - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.562 HSS Services for interworking with IMS, version 18.0.0 + description: 3GPP TS 29.562 HSS Services for interworking with IMS, version 18.4.0 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.562/' servers: @@ -3775,6 +3775,8 @@ components: properties: ipSmGwNumber: $ref: '#/components/schemas/Msisdn' + ipSmGwAddress: + $ref: '#/components/schemas/IpSmGwAddress' scAddress: $ref: '#/components/schemas/Msisdn' @@ -3793,6 +3795,8 @@ components: ipSmGwSbiSupInd: type: boolean default: false + ipSmGwInstanceId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' DsaiTagInformation: description: > diff --git a/TS29564_Nupf_EventExposure.yaml b/TS29564_Nupf_EventExposure.yaml index 82a68d4..1db77ed 100644 --- a/TS29564_Nupf_EventExposure.yaml +++ b/TS29564_Nupf_EventExposure.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: 'UPF Event Exposure Service' - version: 1.1.0-alpha.4 + version: 1.1.0-alpha.5 description: | UPF Event Exposure Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.564 V18.3.0; 5G System; User Plane Function Services; Stage 3. + description: 3GPP TS 29.564 V18.4.0; 5G System; User Plane Function Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.564/ servers: @@ -461,16 +461,6 @@ components: description: QoS Monitoring Measurement information type: object properties: - flowInfos: - type: array - items: - $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation' - minItems: 1 - appIds: - type: array - items: - $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationId' - minItems: 1 dlPacketDelay: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' ulPacketDelay: @@ -486,14 +476,17 @@ components: ulAveThroughput: $ref: 'TS29571_CommonData.yaml#/components/schemas/BitRate' dlCongestion: - type: string + type: integer + minimum: 0 + maximum: 10000 ulCongestion: - type: string + type: integer + minimum: 0 + maximum: 10000 defaultQosFlowInd: type: boolean default: false -# Editor's note: the encoding of the dlCongestion and ulCongestion IEs is FFS TscManagementInfo: description: TSC Management Information diff --git a/TS29564_Nupf_GetUEPrivateIPaddrAndIdentifiers.yaml b/TS29564_Nupf_GetUEPrivateIPaddrAndIdentifiers.yaml new file mode 100644 index 0000000..4fcb549 --- /dev/null +++ b/TS29564_Nupf_GetUEPrivateIPaddrAndIdentifiers.yaml @@ -0,0 +1,154 @@ +openapi: 3.0.0 + +info: + version: '1.0.0-alpha.4' + title: 'UPF GET UE Private IP address and Identifiers Service' + description: | + Nupf_GetUEPrivateIPaddrAndIdentifiers Service. + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + All rights reserved. + +externalDocs: + description: 3GPP TS 29.564 V18.4.0; 5G System; 5G System; User Plane Function Services; Stage 3 + url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.564/' + +servers: + - url: '{apiRoot}/nupf-gueip/v1' + variables: + apiRoot: + default: https://example.com + description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501 + +security: + - {} + - oAuth2ClientCredentials: + - nupf-gueip + +paths: + /ue-ip-info: + get: + summary: Search UeIpInfo for a PDU session from the UeIpInfo + operationId: SearchUeIpInfo + tags: + - UE IP Info_Get + parameters: + - name: snssai + in: query + description: Slice of the PDU session + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + - name: dnn + in: query + description: Dnn of the PDU session + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + - name: ue-ipv4-address + in: query + description: IPv4 address of the UE + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr' + - name: ue-ipv6-prefix + in: query + description: IPv6 prefix of the UE + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Prefix' + - name: port-number + in: query + description: UDP or TCP port associated with the public address + schema: + type: integer + minimum: 0 + maximum: 65535 + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UeIpInfo' + '307': + description: Temporary Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target UPF + schema: + type: string + '308': + description: Permanent Redirect + content: + application/json: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/RedirectResponse' + headers: + Location: + description: The URI pointing to the resource located on the redirect target UPF + schema: + type: string + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '406': + $ref: 'TS29571_CommonData.yaml#/components/responses/406' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '501': + $ref: 'TS29571_CommonData.yaml#/components/responses/501' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + +components: + securitySchemes: + oAuth2ClientCredentials: + type: oauth2 + flows: + clientCredentials: + tokenUrl: '{nrfApiRoot}/oauth2/token' + scopes: + nupf-gueip: Access to the Nupf_GetUEPrivateIPaddrAndIdentifiers API + + schemas: + UeIpInfo: + description: a UE IP Address Info for a PDU session + type: object + properties: + privateIpv4Address: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr' + ipDomain: + type: string + privateIpv6Prefix: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Prefix' + publicIpv4Address: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr' + publicIpv6Prefix: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Prefix' + portNumber: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint16' + dnn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + hplmnSnssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + supi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' + gpsi: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' diff --git a/TS29565_Ntsctsf_ASTI.yaml b/TS29565_Ntsctsf_ASTI.yaml index ca4f55a..a5f1904 100644 --- a/TS29565_Ntsctsf_ASTI.yaml +++ b/TS29565_Ntsctsf_ASTI.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: Ntsctsf_ASTI Service API - version: 1.1.0-alpha.3 + version: 1.1.0-alpha.4 description: | TSCTSF Access Stratum time distribution configuration Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.565 V18.4.0; 5G System; Time Sensitive Communication and + 3GPP TS 29.565 V18.5.0; 5G System; Time Sensitive Communication and Time Synchronization Function Services; Stage 3. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.565/' @@ -412,7 +412,7 @@ components: $ref: '#/components/schemas/AstiConfigStateNotification' minItems: 1 description: > - It is FFS the parameters of the AstiConfigEventNotification data type. + It contains the the reported event(s) and event information. required: - astiNotifId - stateConfigs diff --git a/TS29565_Ntsctsf_TimeSynchronization.yaml b/TS29565_Ntsctsf_TimeSynchronization.yaml index c7730b0..df92f82 100644 --- a/TS29565_Ntsctsf_TimeSynchronization.yaml +++ b/TS29565_Ntsctsf_TimeSynchronization.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: Ntsctsf_TimeSynchronization Service API - version: 1.1.0-alpha.5 + version: 1.1.0-alpha.6 description: | TSCTSF Time Synchronization Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.565 V18.4.0; 5G System; Time Sensitive Communication and Time Synchronization Function + 3GPP TS 29.565 V18.5.0; 5G System; Time Sensitive Communication and Time Synchronization Function Services; Stage 3. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.565/' servers: @@ -711,6 +711,8 @@ components: PTP port state isin any other case, it is included and set to false to indicate the state ofconfiguration for the NW-TT port(s) of the PTP instance is inactive. Default value is false. + clkQltIndOfNwtt: + $ref: 'TS29522_TimeSyncExposure.yaml#/components/schemas/AcceptanceCriteriaResultIndication' stateOfDstts: description: > Contains the PTP port states and the clock quality acceptance criteria result of the @@ -735,7 +737,7 @@ components: to indicate the state of configuration for DS-TT port is active; when PTP port state is in any other case, it is included and set to false to indicate the state of configuration for DS-TT port is inactive. Default value is false. - clkQltIndOfDstts: + clkQltIndOfDstt: $ref: 'TS29522_TimeSyncExposure.yaml#/components/schemas/AcceptanceCriteriaResultIndication' required: - state diff --git a/TS29571_CommonData.yaml b/TS29571_CommonData.yaml index e6e56d8..b89992b 100644 --- a/TS29571_CommonData.yaml +++ b/TS29571_CommonData.yaml @@ -1,17 +1,17 @@ openapi: 3.0.0 info: - version: '1.5.0-alpha.5' + 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).   + © 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 18.4.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: {} @@ -34,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 @@ -380,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: @@ -530,6 +540,8 @@ components: items: type: string minItems: 1 + noProfileMatchInfo: + $ref: 'TS29510_Nnrf_NFDiscovery.yaml#/components/schemas/NoProfileMatchInfo' Link: type: object @@ -1231,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 @@ -1581,6 +1595,7 @@ components: - LTE_M_MEO - LTE_M_GEO - LTE_M_OTHERSAT + - NR_EREDCAP - type: string description: Indicates the radio access used. @@ -1666,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: @@ -2750,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: @@ -3104,8 +3128,6 @@ components: - sai - required: - lai - - required: - - rai description: Exactly one of cgi, sai or lai shall be present. properties: locationNumber: @@ -3113,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. @@ -3640,6 +3662,7 @@ components: VplmnOffloadingInfo: description: VPLMN Specific Offloading Information type: object + nullable: true properties: offloadIdentifier: $ref: '#/components/schemas/OffloadIdentifier' @@ -3795,6 +3818,16 @@ components: 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 @@ -3823,6 +3856,8 @@ components: $ref: '#/components/schemas/TerminationIndication' plmnId: $ref: '#/components/schemas/PlmnId' + mitigationInfo: + $ref: '#/components/schemas/MitigationInfo' required: - snssai @@ -3880,7 +3915,8 @@ 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. PacketRate: type: string @@ -4003,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 @@ -4099,35 +4137,6 @@ components: description: > A String which is transparently passed to the UPF to be applied for traffic to SFC. - PduSetDelayBudget: - type: integer - minimum: 1 - description: > - Unsigned integer indicating PDU Set Delay Budget (PSDB) (see clause 5.7.7.2 of 3GPP - TS 23.501), expressed in 0.01 milliseconds. - - PduSetDelayBudgetRm: - type: integer - minimum: 1 - nullable: true - description: > - This data type is defined in the same way as the 'PduSetDelayBudget' data type, but with - the OpenAPI 'nullable: true' property. - - PduSetErrRate: - type: string - pattern: '^([0-9]E-[0-9])$' - description: > - String representing PDU Set Error Rate (PSER) (see clause 5.7.7.3 3GPP TS 23.501 [8]) where - the scalar and the exponent k are each encoded as one decimal digit. - - PduSetErrRateRm: - type: string - pattern: '^([0-9]E-[0-9])$' - nullable: true - description: > - This data type is defined in the same way as the 'PduSetErrRate' data type, but with the - OpenAPI 'nullable: true' property. # # ENUMERATED DATA TYPES @@ -4447,9 +4456,9 @@ components: type: object properties: pduSetDelayBudget: - $ref: '#/components/schemas/PduSetDelayBudget' + $ref: '#/components/schemas/ExtPacketDelBudget' pduSetErrRate: - $ref: '#/components/schemas/PduSetErrRate' + $ref: '#/components/schemas/PacketErrRate' pduSetHandlingInfo: $ref: '#/components/schemas/PduSetHandlingInfo' # @@ -4485,6 +4494,10 @@ components: type: integer minimum: 1 maximum: 255 + longFormat: + type: boolean + pduSetSizeActive: + type: boolean RtpPayloadInfo: description: RtpPayloadInfo contains Rtp payload type and format. @@ -4924,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. + 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' @@ -4938,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 @@ -5016,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 @@ -5129,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). @@ -5142,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 @@ -5476,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 # @@ -5645,6 +5725,8 @@ components: minItems: 1 associatedSessionId: $ref: '#/components/schemas/AssociatedSessionId' + nrRedCapUeInfo: + $ref: '#/components/schemas/NrRedCapUeInfo' required: - serviceType anyOf: @@ -5960,11 +6042,17 @@ components: type: object properties: synchronizationState: - $ref: '#/components/schemas/SynchronizationState' + type: array + items: + $ref: '#/components/schemas/SynchronizationState' + minItems: 1 clockQuality: $ref: '#/components/schemas/ClockQuality' parentTimeSource: - $ref: '#/components/schemas/TimeSource' + type: array + items: + $ref: '#/components/schemas/TimeSource' + minItems: 1 ClockQuality: description: Contains Clock Quality. @@ -5976,9 +6064,13 @@ components: type: boolean frequencyStability: $ref: '#/components/schemas/Uint16' - clockAccuracy: + clockAccuracyIndex: type: string pattern: '^[A-Fa-f0-9]{2}$' + clockAccuracyValue: + type: integer + minimum: 1 + maximum: 40000000 @@ -6081,7 +6173,9 @@ components: maxTime: type: integer default: 0 - description: maximal lifetime in milliseconds after which a message will no longer be transmitted or retransmitted + description: > + maximal lifetime in milliseconds after which a message will no longer be + transmitted or retransmitted priority: type: integer default: 256 @@ -6138,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': diff --git a/TS29572_Nlmf_Location.yaml b/TS29572_Nlmf_Location.yaml index 091e2b9..ffb9c63 100644 --- a/TS29572_Nlmf_Location.yaml +++ b/TS29572_Nlmf_Location.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.5' + version: '1.3.0-alpha.6' title: 'LMF Location' description: | LMF Location Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.572 V18.4.0; 5G System; Location Management Services; Stage 3 + description: 3GPP TS 29.572 V18.5.0; 5G System; Location Management Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.572/' servers: @@ -156,10 +156,10 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/504' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' - /up-subscription: + /up-subscriptions: post: summary: subscribe about status of a secure LCS-UP connection for a target UE - operationId: UpSubscription + operationId: UpSubscriptions tags: - UP Subscribe security: @@ -176,8 +176,12 @@ paths: $ref: '#/components/schemas/UpSubscription' required: true responses: - '204': + '201': description: Expected response to successful UP Subscription + content: + application/json: + schema: + $ref: '#/components/schemas/UpSubscription' '307': $ref: 'TS29571_CommonData.yaml#/components/responses/307' '308': @@ -210,7 +214,7 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/default' callbacks: UPNotify: - '{$request.body#/upNotifyCallBackURI}': + '{$request.body#/upNotifyCallBackUri}': post: requestBody: description: UP Connection Status Notification @@ -252,6 +256,52 @@ paths: default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' + /up-subscriptions/{subscriptionId}: + delete: + summary: Deletes a subscription + operationId: DeleteSubscription + tags: + - UP Unsubscribe + parameters: + - name: subscriptionId + in: path + required: true + description: Unique subscription Id + schema: + type: string + responses: + '204': + description: Expected response to a successful subscription removal + '307': + $ref: 'TS29571_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29571_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '501': + $ref: 'TS29571_CommonData.yaml#/components/responses/501' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + /cancel-location: post: summary: request cancellation of periodic or triggered location @@ -356,7 +406,7 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/504' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' - /location-measure: + /measure-location: post: summary: PRU location measurement operationId: LocationMeasure @@ -368,7 +418,7 @@ paths: - nlmf-loc - oAuth2ClientCredentials: - nlmf-loc - - nlmf-loc:location-measure:invoke + - nlmf-loc:measure-location:invoke requestBody: content: application/json: @@ -413,7 +463,7 @@ paths: default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' - /up-configure: + /configure-up: post: summary: set up, modify or terminate a secure LCS-UP connection for a target UE operationId: UpConfig @@ -425,7 +475,7 @@ paths: - nlmf-loc - oAuth2ClientCredentials: - nlmf-loc - - nlmf-loc:up-configure:invoke + - nlmf-loc:configure-up:invoke requestBody: content: application/json: @@ -478,9 +528,9 @@ components: nlmf-loc:determine-location:invoke: Access to invoke Determine Location nlmf-loc:cancel-location:invoke: Access to invoke Cancel Location nlmf-loc:location-context-transfer:invoke: Access to invoke Location Context - nlmf-loc:location-measure:invoke: Access to invoke Location Measurement - nlmf-loc:up-subscription:invoke: Access to invoke UP Subscription - nlmf-loc:up-configure:invoke: Access to invoke UP Config + nlmf-loc:measure-location:invoke: Access to invoke Location Measurement + nlmf-loc:up-subscriptions:invoke: Access to invoke UP Subscription + nlmf-loc:configure-up:invoke: Access to invoke UP Config schemas: # @@ -627,6 +677,10 @@ components: $ref: '#/components/schemas/MappedLocationQoSEps' additionalUeInfo: $ref: '#/components/schemas/AdditionalUeInfo' + coordinateID: + type: integer + rangingSlCapability: + $ref: '#/components/schemas/RangingSlCapability' LocationDataExt: description: Extended Location Data for UEs @@ -694,8 +748,8 @@ components: losNlosMeasureInd: $ref: '#/components/schemas/LosNlosMeasureInd' relatedApplicationlayerId: - type: string - rangeDirection: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + distanceDirection: $ref: '#/components/schemas/RangeDirection' 2dRelativeLocation: $ref: '#/components/schemas/2DRelativeLocation' @@ -703,6 +757,8 @@ components: $ref: '#/components/schemas/3DRelativeLocation' relativeVelocity: $ref: '#/components/schemas/VelocityEstimate' + rangingSlCapability: + $ref: '#/components/schemas/RangingSlCapability' GeographicArea: @@ -826,6 +882,8 @@ components: $ref: '#/components/schemas/Uncertainty' confidence: $ref: '#/components/schemas/Confidence' + vConfidence: + $ref: '#/components/schemas/Confidence' EllipsoidArc: description: Ellipsoid Arc. @@ -1477,8 +1535,8 @@ components: upLocRepStatAf: type: integer relatedApplicationlayerId: - type: string - rangeDirection: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationlayerId' + distanceDirection: $ref: '#/components/schemas/RangeDirection' 2dRelativeLocation: $ref: '#/components/schemas/2DRelativeLocation' @@ -1530,6 +1588,11 @@ components: $ref: '#/components/schemas/GeographicArea' timestampOfPreCalcuLocEstimate: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + timeWindows: + type: array + items: + $ref: '#/components/schemas/TimeWindow' + minItems: 1 LocMeasurementResp: description: Location Measurement Response. @@ -1585,25 +1648,28 @@ components: description: UP Subscription type: object required: - - ldrReference + - notifCorrelationId - upConnectionStatus properties: - ldrReference: - $ref: '#/components/schemas/LdrReference' + notifCorrelationId: + $ref: '#/components/schemas/CorrelationID' upConnectionStatus: $ref: '#/components/schemas/UpConnectionStatus' - targetLMFIdentification: + targetLMFId: $ref: '#/components/schemas/LMFIdentification' UpSubscription: description: UP Subscription type: object required: - - upNotifyCallBackURI + - upNotifyCallBackUri + - notifCorrelationId - supi properties: - upNotifyCallBackURI: + upNotifyCallBackUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' + notifCorrelationId: + $ref: '#/components/schemas/CorrelationID' supi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' gpsi: @@ -1625,10 +1691,13 @@ components: description: UP Config type: object required: - - upNotifyCallBackURI + - upNotifyCallBackUri + - notifCorrelationId properties: - upNotifyCallBackURI: + upNotifyCallBackUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' + notifCorrelationId: + $ref: '#/components/schemas/CorrelationID' supi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' gpsi: @@ -1638,14 +1707,14 @@ components: default: false lcsUpConnectionInd: $ref: '#/components/schemas/LcsUpConnectionInd' - targetLMFIdentification: + targetLMFId: $ref: '#/components/schemas/LMFIdentification' RangeDirection: - description: Represents a range and direction from a point A to a point B. + description: Represents a distance and direction from a point A to a point B. type: object properties: - range: + distance: type: number azimuthDirection: $ref: '#/components/schemas/Angle' @@ -1889,6 +1958,16 @@ components: type: string format: byte + TimeWindow: + description: Time Window. + type: string + format: byte + + RangingSlCapability: + description: Ranging/Sidelink Positioning Positioning capabilities supported by the UE. + type: string + format: byte + # # ENUMS # @@ -1905,6 +1984,7 @@ components: - PLMN_OPERATOR_OM - PLMN_OPERATOR_ANONYMOUS_STATISTICS - PLMN_OPERATOR_TARGET_MS_SERVICE_SUPPORT + - SL_POS - type: string SupportedGADShapes: @@ -1921,7 +2001,7 @@ components: - ELLIPSOID_ARC - LOCAL_2D_POINT_UNCERTAINTY_ELLIPSE - LOCAL_3D_POINT_UNCERTAINTY_ELLIPSOID - - RANGE_DIRECTION + - DISTANCE_DIRECTION - RELATIVE_2D_LOCATION_UNCERTAINTY_ELLIPSE - RELATIVE_3D_LOCATION_UNCERTAINTY_ELLIPSOID - type: string @@ -1956,6 +2036,10 @@ components: - UL_TDOA - UL_AOA - NETWORK_SPECIFIC + - SL_TDOA + - SL_TOA + - SL_AoA + - SL_RT - type: string PositioningMode: diff --git a/TS29573_CustomHeaders.abnf b/TS29573_CustomHeaders.abnf new file mode 100644 index 0000000..671d389 --- /dev/null +++ b/TS29573_CustomHeaders.abnf @@ -0,0 +1,87 @@ +; ---------------------------------------- +; RFC 5234 +; ---------------------------------------- + +HTAB = %x09 ; horizontal tab + +SP = %x20 + +DIGIT = %x30-39 ; 0-9 + +ALPHA = %x41-5A / %x61-7A ; A-Z / a-z + +HEXDIG = DIGIT / "A" / "B" / "C" / "D" / "E" / "F" + +; ---------------------------------------- +; RFC 9110 +; ---------------------------------------- + +OWS = *( SP / HTAB ) + +RWS = 1*( SP / HTAB ) + +tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" + / "." / "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA + +token = 1*tchar + +; ---------------------------------------- +; 3GPP TS 29.573 +; +; Version: 18.6.0 (March 2024) +; +; (c) 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). +; ---------------------------------------- + +; +; Header: 3gpp-Connect-Req-Info +; +Connect-Req-Info-Header = "3gpp-Connect-Req-Info:" OWS "connect-purpose=" OWS connect-purpose-value ";" OWS orig-network-id ";" OWS sender-fqdn [";" OWS intended-n32-purposes] *( ";" OWS req-param ) + +connect-purpose-value = "n32c" / token + +orig-network-id = "originating-network-id=" OWS 3DIGIT "-" 2*3DIGIT [ "-" 11HEXDIG ] + +sender-fqdn = "sender-fqdn=" OWS 4*( ALPHA / DIGIT / "-" / "." ) + +intended-n32-purposes = intended-n32-purpose *(";" OWS intended-n32-purpose) + +intended-n32-purpose="intended-n32-purpose=" OWS n32-purpose-value + +n32-purpose-value = "ROAMING" + / "INTER_PLMN_MOBILITY" + / "SMS_INTERCONNECT" + / "ROAMING_TEST" + / "INTER_PLMN_MOBILITY_TEST" + / "SMS_INTERCONNECT_TEST" + / "SNPN_INTERCONNECT" + / "SNPN_INTERCONNECT_TEST" + / "DISASTER_ROAMING" + / "DISASTER_ROAMING_TEST" + / token + +req-param = req-param-name "=" OWS req-param-value + +req-param-name = token + +req-param-value = token + +; +; Header: 3gpp-Connect-Resp-Info +; + +Connect-Resp-Info-Header = "3gpp-Connect-Resp-Info:" OWS resp-param *( ";" OWS resp-param ) OWS + +resp-param = allowed-n32-purposes / p-sepp-fqdn / other-resp-param + +allowed-n32-purposes = allowed-n32-purpose *(OWS ";" OWS allowed-n32-purpose) + +allowed-n32-purpose = "allowed-n32-purpose=" n32-purpose-value + +p-sepp-fqdn = "p-sepp-fqdn=" OWS 4*( ALPHA / DIGIT / "-" / "." ) + +other-resp-param = other-resp-param-name "=" OWS other-resp-param-value + +other-resp-param-name = token + +other-resp-param-value = token diff --git a/TS29573_JOSEProtectedMessageForwarding.yaml b/TS29573_JOSEProtectedMessageForwarding.yaml index 0eb42c7..9b3068a 100644 --- a/TS29573_JOSEProtectedMessageForwarding.yaml +++ b/TS29573_JOSEProtectedMessageForwarding.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.2' + version: '1.3.0-alpha.3' title: 'JOSE Protected Message Forwarding API' description: | N32-f Message Forwarding Service. - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. servers: - url: '{apiRoot}/n32f-forward/v1' @@ -14,7 +14,7 @@ servers: default: https://example.com description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501. externalDocs: - description: 3GPP TS 29.573 V18.5.0; 5G System; Public Land Mobile Network (PLMN) Interconnection; Stage 3 + description: 3GPP TS 29.573 V18.6.0; 5G System; Public Land Mobile Network (PLMN) Interconnection; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.573/ paths: @@ -134,6 +134,11 @@ paths: components: schemas: + +# +# STRUCTURED TYPES +# + FlatJweJson: description: Contains the integrity protected reformatted block type: object @@ -233,7 +238,8 @@ components: $ref: '#/components/schemas/HttpPayload' minItems: 1 RequestLine: - description: Contains the request line of the HTTP API request being reformatted and forwarded over N32-f + description: > + Contains the request line of the HTTP API request being reformatted and forwarded over N32-f type: object required: - method @@ -254,6 +260,12 @@ components: type: string queryFragment: type: string + pathQueryProtectInd: + type: array + items: + $ref: 'TS29573_N32_Handshake.yaml#/components/schemas/IeLocation' + minItems: 1 + maxItems: 2 HttpHeader: description: Contains the encoding of HTTP headers in the API request / response type: object @@ -335,3 +347,11 @@ components: type: integer suggestedProblemDetails: $ref: 'TS29571_CommonData.yaml#/components/schemas/ProblemDetails' + +# +# SIMPLE TYPES +# + +# +# ENUMS +# diff --git a/TS29573_N32_Handshake.yaml b/TS29573_N32_Handshake.yaml index 396f232..56661b4 100644 --- a/TS29573_N32_Handshake.yaml +++ b/TS29573_N32_Handshake.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: '1.3.0-alpha.5' + version: '1.3.0-alpha.6' title: 'N32 Handshake API' description: | N32-c Handshake Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. servers: - url: '{apiRoot}/n32c-handshake/v1' @@ -14,7 +14,7 @@ servers: default: https://example.com description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501. externalDocs: - description: 3GPP TS 29.573 V18.5.0; 5G System; Public Land Mobile Network (PLMN) Interconnection; Stage 3 + description: 3GPP TS 29.573 V18.6.0; 5G System; Public Land Mobile Network (PLMN) Interconnection; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.573/ paths: @@ -251,6 +251,7 @@ components: - HEADER - BODY - MULTIPART_BINARY + - URI_PATH - type: string IeInfo: @@ -422,6 +423,12 @@ components: minItems: 1 protectionPolicyInfo: $ref: '#/components/schemas/ProtectionPolicy' + secProfiles: + type: array + items: + type: string + minItems: 1 + maxItems: 256 ipxProviderSecInfoList: type: array items: @@ -445,6 +452,12 @@ components: type: string selProtectionPolicyInfo: $ref: '#/components/schemas/ProtectionPolicy' + selSecProfiles: + type: array + items: + type: string + minItems: 1 + maxItems: 256 ipxProviderSecInfoList: type: array items: diff --git a/TS29573_SeppTelescopicFqdnMapping.yaml b/TS29573_SeppTelescopicFqdnMapping.yaml index dcc4a96..a078b52 100644 --- a/TS29573_SeppTelescopicFqdnMapping.yaml +++ b/TS29573_SeppTelescopicFqdnMapping.yaml @@ -1,11 +1,11 @@ openapi: 3.0.0 info: - version: '1.2.0-alpha.1' + version: '1.2.0-alpha.2' title: 'SEPP Telescopic FQDN Mapping API' description: | SEPP Telescopic FQDN Mapping Service. - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. servers: @@ -16,7 +16,7 @@ servers: description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501. externalDocs: - description: 3GPP TS 29.573 V18.1.0; 5G System; Public Land Mobile Network (PLMN) Interconnection; Stage 3 + description: 3GPP TS 29.573 V18.6.0; 5G System; Public Land Mobile Network (PLMN) Interconnection; Stage 3 url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.573/ paths: @@ -65,6 +65,11 @@ paths: components: schemas: + +# +# STRUCTURED TYPES +# + TelescopicMapping: description: Contains the Telescopic mapping data type: object @@ -75,3 +80,11 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Fqdn' foreignFqdn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Fqdn' + +# +# SIMPLE TYPES +# + +# +# ENUMS +# diff --git a/TS29574_Ndccf_DataManagement.yaml b/TS29574_Ndccf_DataManagement.yaml index 409174f..7d64fbf 100644 --- a/TS29574_Ndccf_DataManagement.yaml +++ b/TS29574_Ndccf_DataManagement.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: 1.1.0-alpha.5 + version: 1.1.0-alpha.6 title: Ndccf_DataManagement description: | DCCF Data Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.574 V18.4.0; 5G System; Data Collection Coordination Services; Stage 3. + description: 3GPP TS 29.574 V18.5.0; 5G System; Data Collection Coordination Services; Stage 3. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.574/' # servers: @@ -529,6 +529,157 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + + /transfers: + post: + summary: Creates a new Individual DCCF Data Management Transfer resource. + operationId: CreateDCCFDataManagementTransfer + tags: + - DCCF Data Management Transfers (Collection) + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/NdccfDataManagementTransfer' + required: true + responses: + '201': + description: Creates a new Individual DCCF Data Management Transfer resource. + headers: + Location: + description: > + Contains the URI of the newly created resource, according to the structure + {apiRoot}/ndccf-datamanagement//tranfers/{tranferId} + required: true + schema: + type: string + content: + application/json: + schema: + $ref: '#/components/schemas/NdccfDataManagementTransfer' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + /transfers/{transferId}: + put: + summary: Updates an existing Individual DCCF Data Management Transfer resource. + operationId: UpdateDCCFDataManagementTransfer + tags: + - Individual DCCF Data Management Transfer (Document) + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/NdccfDataManagementTransfer' + parameters: + - name: transferId + in: path + description: > + String identifying a data management transfer to the Ndccf_DataManagement Service. + required: true + schema: + type: string + responses: + '200': + description: > + The Individual DCCF Data Management Transfer resource was modified successfully and a + representation of that resource is returned. + content: + application/json: + schema: + $ref: '#/components/schemas/NdccfDataManagementTransfer' + '307': + $ref: 'TS29571_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29571_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + delete: + summary: Deletes an existing Individual DCCF Data Management Transfer resource. + operationId: DeleteDCCFDataManagementTransfer + tags: + - Individual DCCF Data DataManagementTransfer (Document) + parameters: + - name: transferId + in: path + description: > + String identifying a data management transfer to the Ndccf_DataManagement Service. + required: true + schema: + type: string + responses: + '204': + description: > + No Content. The Individual DCCF Data Subscription resource matching the transferId was + deleted. + '307': + $ref: 'TS29571_CommonData.yaml#/components/responses/307' + '308': + $ref: 'TS29571_CommonData.yaml#/components/responses/308' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' # components: securitySchemes: @@ -738,6 +889,8 @@ components: dataNotifCorrId: type: string description: Notification correlation identifier. + newSubscriptionUri: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' dataNotif: $ref: 'TS29575_Nadrf_DataManagement.yaml#/components/schemas/DataNotification' dataReports: @@ -1001,6 +1154,19 @@ components: or analytics that are about to be deleted. required: - retrievalInd +# + NdccfDataManagementTransfer: + description: Represents an Individual DCCF Data Management Transfer. + type: object + properties: + subscriptionId: + type: string + description: The identifier of a subscription that needs to be transferred. + subInfo: + $ref: '#/components/schemas/NdccfDataSubscription' + required: + - subscriptionId + - subInfo # SummarizationAttribute: anyOf: @@ -1068,6 +1234,7 @@ components: - USER_CONSENT_REVOKED - DCCF_OVERLOAD - OTHER + - OUT_OF_SERVING_AREA - type: string description: > This string provides forward-compatibility with future @@ -1079,3 +1246,4 @@ components: - USER_CONSENT_REVOKED: The user consent has been revoked. - DCCF_OVERLOAD: The DCCF is overloaded. - OTHER: Indicates that the termination is due to other reason. + - OUT_OF_SERVING_AREA: Indicates that that the UE(s) moved outside of the DCCF serving area. diff --git a/TS29575_Nadrf_MLModelManagement.yaml b/TS29575_Nadrf_MLModelManagement.yaml index eb594d7..77ca8ba 100644 --- a/TS29575_Nadrf_MLModelManagement.yaml +++ b/TS29575_Nadrf_MLModelManagement.yaml @@ -1,13 +1,13 @@ openapi: 3.0.0 info: - version: 1.0.0-alpha.2 + version: 1.0.0-alpha.3 title: Nadrf_MLModelManagement description: | ADRF ML Model Management Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.575 V18.4.0; 5G System; Analytics Data Repository Services; Stage 3. + description: 3GPP TS 29.575 V18.5.0; 5G System; Analytics Data Repository Services; Stage 3. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.575/' # servers: @@ -87,7 +87,7 @@ paths: required: false schema: type: string - - name: modelUniqueId + - name: modelUniqueIds description: Unique Model identifier of a ML model. in: query required: false @@ -95,7 +95,6 @@ paths: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' - minItems: 1 responses: '200': description: ML model store records are returned. @@ -188,7 +187,7 @@ paths: schema: type: array items: - $ref: '#/components/schemas/NadrfMLModelStoreRecord' + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' minItems: 1 required: true responses: @@ -199,7 +198,14 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/MLModelDelResult' + type: array + items: + $ref: '#/components/schemas/MLModelDelResult' + minItems: 1 + '204': + description: > + No Content. The ML models matching all identifiers provided in the request body + were deleted. '400': $ref: 'TS29571_CommonData.yaml#/components/responses/400' '401': @@ -245,7 +251,7 @@ components: - required: [nfInstanceId] - required: [nfSetId] - anyOf: - - required: [mlModelIdnfo] + - required: [mlModelInfo] - required: [mlModels] properties: nfInstanceId: diff --git a/TS29577_Nipsmgw_SMService.yaml b/TS29577_Nipsmgw_SMService.yaml index 08f610a..a1e5bd3 100644 --- a/TS29577_Nipsmgw_SMService.yaml +++ b/TS29577_Nipsmgw_SMService.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.1.0-alpha.2' + version: '1.1.0-alpha.3' title: 'Nipsmgw_SMService Service API' description: | IP-SM-GW SMService. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.577 V18.1.0; 5G System; IP Short Message Gateway and SMS Router For Short Message Services; Stage 3 + description: 3GPP TS 29.577 V18.3.0; 5G System; IP Short Message Gateway and SMS Router For Short Message Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.577/' security: @@ -218,8 +218,15 @@ components: properties: smsfId: $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' + smsf3Gpp: + $ref: 'TS29503_Nudm_UECM.yaml#/components/schemas/SmsfRegistration' + smsfNon3Gpp: + $ref: 'TS29503_Nudm_UECM.yaml#/components/schemas/SmsfRegistration' supi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' + ipSmGwGuidanceInd: + type: boolean + default: false supportedFeatures: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' @@ -233,8 +240,12 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Addr' ipsmgwFqdn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Fqdn' + ipSmGwNfInstanceId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' correlationId: type: string + ipSmGwGuidance: + $ref: 'TS29503_Nudm_UECM.yaml#/components/schemas/IpSmGwGuidance' supportedFeatures: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' diff --git a/TS29577_Nrouter_SMService.yaml b/TS29577_Nrouter_SMService.yaml index ff4db19..8f10bb4 100644 --- a/TS29577_Nrouter_SMService.yaml +++ b/TS29577_Nrouter_SMService.yaml @@ -1,15 +1,15 @@ openapi: 3.0.0 info: - version: '1.1.0-alpha.2' + version: '1.1.0-alpha.3' title: 'Nrouter_SMService Service API' description: | SMS Router SMService. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.577 V18.1.0; 5G System; IP Short Message Gateway and SMS Router For Short Message Services; Stage 3 + description: 3GPP TS 29.577 V18.3.0; 5G System; IP Short Message Gateway and SMS Router For Short Message Services; Stage 3 url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.577/' security: @@ -220,5 +220,7 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Addr' routerFqdn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Fqdn' + routerNfInstanceId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' supportedFeatures: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' diff --git a/TS29581_Nmbstf_DistSession.yaml b/TS29581_Nmbstf_DistSession.yaml index 89577cf..48a4a5e 100644 --- a/TS29581_Nmbstf_DistSession.yaml +++ b/TS29581_Nmbstf_DistSession.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Nmbstf-distsession - version: 1.1.0-alpha.1 + version: 1.1.0-alpha.2 description: | MBSTF Distribution Session Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.581 V18.3.0; 5G System; MBSDistribution Service. + description: 3GPP TS 29.581 V18.4.0; 5G System; MBSDistribution Service. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.581/ servers: @@ -516,6 +516,8 @@ components: dscpMarking: type: string writeOnly: true + distSessionSubscription: + $ref: '#/components/schemas/DistSessionSubscription' required: - distSessionId - distSessionState diff --git a/TS29583_PIN_ASRegistration.yaml b/TS29583_PIN_ASRegistration.yaml index 618f820..d213c26 100644 --- a/TS29583_PIN_ASRegistration.yaml +++ b/TS29583_PIN_ASRegistration.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: PINServer PAS Registration_API - version: 1.0.0-alpha.3 + version: 1.0.0-alpha.7 description: | API for PAS registration to PIN server. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.583; Application layer support for Personal IoT Network (PINAPP); + 3GPP TS 29.583 V18.0.0; Application layer support for Personal IoT Network (PINAPP); Personal IoT Network (PIN) Server Services; Stage 3. url: 'http://www.3gpp.org/ftp/Specs/archive/29_series/29.583/' @@ -287,14 +287,12 @@ components: $ref: '#/components/schemas/ConnectivityInfo' expTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' - requestorId: - type: string - description: Indentifies a PAS passId: type: string description: Indentifies a PIN service + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - - requestorId - conInfo - passId @@ -310,7 +308,7 @@ components: $ref: 'TS29122_CommonData.yaml#/components/schemas/Ipv6Addr' uri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' - oneOf: + anyOf: - required: [uri] - required: [fqdn] - required: [ipv4Addr] @@ -327,3 +325,7 @@ components: passId: type: string description: Identifies a PIN service provided by PAS. + anyOf: + - required: [conInfo] + - required: [expTime] + - required: [passId] diff --git a/TS29583_PIN_ASServiceContinuity.yaml b/TS29583_PIN_ASServiceContinuity.yaml index 3f2bbf9..f65d7c7 100644 --- a/TS29583_PIN_ASServiceContinuity.yaml +++ b/TS29583_PIN_ASServiceContinuity.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: PINServer Service Continuity Information_API + version: 1.0.0-alpha.6 description: | API for PINServer Service Continuity Information Reporting. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: 1.0.0-alpha.2 externalDocs: description: > - 3GPP TS 29.583; Application layer support for Personal IoT Network (PINAPP); + 3GPP TS 29.583 V18.0.0; Application layer support for Personal IoT Network (PINAPP); Personal IoT Network (PIN) Server Services; Stage 3. url: 'http://www.3gpp.org/ftp/Specs/archive/29_series/29.583/' @@ -326,15 +326,17 @@ components: $ref: '#/components/schemas/EventType' notificationAddr: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' - requestorId: + pinId: type: string - description: Identifies a AF requestor. + description: Identifies a PIN. expTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - subsEvent - notificationAddr - - requestorId + - pinId ServiceContinuityInfoPatch: type: object @@ -344,9 +346,9 @@ components: $ref: '#/components/schemas/EventType' notificationAddr: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' - requestorId: + pinId: type: string - description: Identifies a AF requestor. + description: Identifies a PIN. expTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' @@ -361,6 +363,9 @@ components: the service continuity information notification is delivered. repInfo: $ref: '#/components/schemas/ServiceContinuityReportInfo' + required: + - subsId + - repInfo ServiceContinuityReportInfo: type: object @@ -369,6 +374,9 @@ components: acId: type: string description: Identifies an application client identifier. + pinId: + type: string + description: Identifies a PIN. pegcId: type: string description: Identifies a PEGC. @@ -383,6 +391,13 @@ components: description: Identifies the PINE. sessionDes: $ref: 'TS29122_CommonData.yaml#/components/schemas/FlowInfo' + required: + - acId + - pinId + - pegcId + - serviceId + - sessionId + - targetPineId EventType: anyOf: diff --git a/TS29583_PIN_ASServiceSwitch.yaml b/TS29583_PIN_ASServiceSwitch.yaml index 73d5daa..9a30bfb 100644 --- a/TS29583_PIN_ASServiceSwitch.yaml +++ b/TS29583_PIN_ASServiceSwitch.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: PINServer Service Switch Information_API + version: 1.0.0-alpha.6 description: | API for PINServer Service Switch Information Reporting. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. - version: 1.0.0-alpha.2 externalDocs: description: > - 3GPP TS 29.583; Application layer support for Personal IoT Network (PINAPP); + 3GPP TS 29.583 V18.0.0; Application layer support for Personal IoT Network (PINAPP); Personal IoT Network (PIN) Server Services; Stage 3. url: 'http://www.3gpp.org/ftp/Specs/archive/29_series/29.583/' @@ -326,15 +326,17 @@ components: $ref: '#/components/schemas/EventType' notificationAddr: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' - requestorId: + pinId: type: string - description: Identifies a AF requestor. + description: Identifies a PIN. expTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' + suppFeat: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - subsEvent - notificationAddr - - requestorId + - pinId ServiceSwitchInfoPatch: type: object @@ -344,9 +346,9 @@ components: $ref: '#/components/schemas/EventType' notificationAddr: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' - requestorId: + pinId: type: string - description: Identifies a AF requestor. + description: Identifies a PIN. expTime: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' @@ -361,6 +363,9 @@ components: the service switch information notification is delivered. repInfo: $ref: '#/components/schemas/ServiceSwitchReportInfo' + required: + - subsId + - repInfo ServiceSwitchReportInfo: type: object @@ -369,6 +374,9 @@ components: acId: type: string description: Identifies an application client identifier. + pinId: + type: string + description: Identifies a PIN. sessionId: type: string description: Identifies an application session. @@ -377,6 +385,11 @@ components: description: Identifies the PINE that the service is switched to. sessionDes: $ref: 'TS29122_CommonData.yaml#/components/schemas/FlowInfo' + required: + - acId + - pinId + - sessionId + - targetPineId EventType: anyOf: diff --git a/TS29586_Nslpkmf_Discovery.yaml b/TS29586_Nslpkmf_Discovery.yaml index 6db11f4..36e9943 100644 --- a/TS29586_Nslpkmf_Discovery.yaml +++ b/TS29586_Nslpkmf_Discovery.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: Nslpkmf_Discovery API - version: '1.0.0-alpha.1' + version: '1.0.0-alpha.3' description: | Nslpkmf_Discovery Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.586 V0.1.0; 5G System; SideLink Positioning Key Management Services; Stage 3. + 3GPP TS 29.586 V18.0.0; 5G System; SideLink Positioning Key Management Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.586/ servers: diff --git a/TS29586_Nslpkmf_SLPKMFKeyRequest.yaml b/TS29586_Nslpkmf_SLPKMFKeyRequest.yaml index c496507..69d1ee4 100644 --- a/TS29586_Nslpkmf_SLPKMFKeyRequest.yaml +++ b/TS29586_Nslpkmf_SLPKMFKeyRequest.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: Nslpkmf_SLPKMFKeyRequest - version: 1.0.0-alpha.1 + version: '1.0.0-alpha.3' description: | SLPKMF KeyRequest Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.586 V0.1.0; 5G System; SideLink Positioning Key Management Services; Stage 3. + 3GPP TS 29.586 V18.0.0; 5G System; SideLink Positioning Key Management Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.586/ servers: diff --git a/TS29591_Nnef_EventExposure.yaml b/TS29591_Nnef_EventExposure.yaml index 391bb67..effbdf2 100644 --- a/TS29591_Nnef_EventExposure.yaml +++ b/TS29591_Nnef_EventExposure.yaml @@ -2,15 +2,15 @@ openapi: 3.0.0 info: title: Nnef_EventExposure - version: 1.3.0-alpha.4 + version: 1.3.0-alpha.5 description: | NEF Event Exposure Service. - © 2023 , 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 29.591 V18.4.0; 5G System; Network Exposure Function Southbound Services; Stage 3. + 3GPP TS 29.591 V18.5.0; 5G System; Network Exposure Function Southbound Services; Stage 3. url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.591/ servers: @@ -450,6 +450,8 @@ components: $ref: '#/components/schemas/NefEvent' eventFilter: $ref: '#/components/schemas/NefEventFilter' + eventRepInfo: + $ref: 'TS29523_Npcf_EventExposure.yaml#/components/schemas/ReportingInformation' required: - event diff --git a/TS29598_Nudsf_DataRepository.yaml b/TS29598_Nudsf_DataRepository.yaml index 728154a..0232f26 100644 --- a/TS29598_Nudsf_DataRepository.yaml +++ b/TS29598_Nudsf_DataRepository.yaml @@ -1,14 +1,14 @@ openapi: 3.0.0 info: title: Nudsf_DataRepository - version: 1.2.0-alpha.5 + version: 1.2.0-alpha.6 description: | Nudsf Data Repository Service. - © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.598 UDSF Services, V18.4.0. + description: 3GPP TS 29.598 UDSF Services, V18.5.0. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.598/' servers: @@ -434,6 +434,145 @@ paths: $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' + + patch: + summary: Partial update Record + description: Partial update Record with a user provided RecordId + operationId: PatchRecord + tags: + - Record CRUD + security: + - {} + - oAuth2ClientCredentials: + - nudsf-dr + - oAuth2ClientCredentials: + - nudsf-dr + - nudsf-dr:record:modify + parameters: + - name: realmId + in: path + description: Identifier(name) of the Realm + required: true + schema: + type: string + example: Realm01 + - name: storageId + in: path + description: Identifier of the Storage + required: true + schema: + type: string + example: Storage01 + - name: recordId + in: path + description: Identifier of the Record + required: true + schema: + type: string + example: UserRecordValue000000001 + - name: If-Match + in: header + description: Record validator for conditional requests, as described in RFC 7232, 3.2 + schema: + type: string + - name: supported-features + in: query + description: Features required to be supported by the target NF + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' + requestBody: + $ref: '#/components/requestBodies/RecordPatchBody' + callbacks: + recordExpired: + '{$request.body#/callbackReference}': + post: + parameters: + - name: Content-Location + in: header + description: The expired record URI + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' + requestBody: + $ref: '#/components/requestBodies/RecordBody' + responses: + '204': + description: Callback executed successfully + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + responses: + '204' : # Updated successfully + description: >- + Successful case. The record has been successfully updated and no return is expected. + headers: + Cache-Control: + $ref: '#/components/headers/Cache-Control' + ETag: + $ref: '#/components/headers/ETag' + Last-Modified: + $ref: '#/components/headers/Last-Modified' + '304': + $ref: '#/components/responses/304' + '400': + $ref: 'TS29571_CommonData.yaml#/components/responses/400' + '401': + $ref: 'TS29571_CommonData.yaml#/components/responses/401' + '403': + $ref: 'TS29571_CommonData.yaml#/components/responses/403' + '404': + $ref: 'TS29571_CommonData.yaml#/components/responses/404' + '408': + $ref: 'TS29571_CommonData.yaml#/components/responses/408' + '409': + $ref: '#/components/responses/409' + '411': + $ref: 'TS29571_CommonData.yaml#/components/responses/411' + '412': + $ref: '#/components/responses/412' + '413': + $ref: 'TS29571_CommonData.yaml#/components/responses/413' + '415': + $ref: 'TS29571_CommonData.yaml#/components/responses/415' + '422': # One or more instructions could not be applied. Record is not modified + description: >- + If one or more modification instructions cannot be applied, no changes shall be made to record, the execution report is returned. + content: + application/json: + example: + schema: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PatchResult' + '429': + $ref: 'TS29571_CommonData.yaml#/components/responses/429' + '500': + $ref: 'TS29571_CommonData.yaml#/components/responses/500' + '502': + $ref: 'TS29571_CommonData.yaml#/components/responses/502' + '503': + $ref: 'TS29571_CommonData.yaml#/components/responses/503' + default: + $ref: 'TS29571_CommonData.yaml#/components/responses/default' + delete: summary: Delete a Record with an user provided RecordId operationId: DeleteRecord @@ -2098,6 +2237,28 @@ components: example: >- {"meta": { "tags" : {"tag1" : ["value1"], "tag2" :["value2"] } }, "blocks": [{"Content-Id": "userDefBinaryBlob", "Content-Type": "text/plain", "content": "QmxvY2sgY29udGVudA=="}, {"Content-Id": "userDefJsonBlob", "Content-Type": "application/json", "content": "{"key": "ftsimpletype-999550000000002", "value": "A3E71A78377179B5B91A;imsi-999550000000123"}]} + RecordPatch: + description: Definition of a Record Patch + type: object + properties: + patch: + # json patch as defined in RFC 6902 + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/PatchItem' + minItems: 1 + blocks: + # List of multipart data + type: array + description: list of opaque Block's being referred to by PatchItems + items: + $ref: '#/components/schemas/Block' + minItems: 1 + required: + - patch + example: >- + {"patch": [{ "op": "add", "path": "/meta/callbackReference", "value": "https://example.com" }, { "op": "copy", "from": "/blocks/blockID1", "to": "/blocks/blockID2" }, { "op": "add", "path": "/blocks/blockID1", "value": "addedBlock1" }], "blocks": [{"Content-Id": "addedBlock1", "Content-Type": "text/plain", "content": "QmxvY2sgY29udGVudA=="}]} + RecordIdList: description: List of Record IDs type: object @@ -2464,6 +2625,33 @@ components: type: string required: true + RecordPatchBody: + description: The patch record multipart request body. The patch part shall be the first part and is mandatory and zero or more block parts being referred to by patch items may follow the patch part. + required: true + content: + multipart/mixed: + schema: + $ref: '#/components/schemas/RecordPatch' + encoding: + patch: # The patch part shall be the first part + contentType: application/json-patch+json + headers: + Content-Id: + schema: + type: string + required: true + blocks: # 0 or more block parts may follow the patch part + contentType: '*/*' # Block part can be of any type + headers: + Content-Id: # Block identifier is defined by the Content-Id header. + schema: + type: string + required: true + Content-Transfer-Encoding: + schema: + type: string + required: true + RecordNotificationBody: description: The record notification multipart request body. The descriptor part shall be the first one, followed by record meta part and by zero or more block parts. required: true diff --git a/TS29673_Nucmf_UERCM.yaml b/TS29673_Nucmf_UERCM.yaml index 6e6fdb0..3b25b41 100644 --- a/TS29673_Nucmf_UERCM.yaml +++ b/TS29673_Nucmf_UERCM.yaml @@ -2,14 +2,14 @@ openapi: 3.0.0 info: title: Nucmf_UECapabilityManagement - version: 1.2.0-alpha.1 + version: 1.2.0-alpha.2 description: | Nucmf_UECapabilityManagement Service. - © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). + © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: - description: 3GPP TS 29.673 V18.0.0; 5G System; UE Radio Capability Management Services + description: 3GPP TS 29.673 V18.3.0; 5G System; UE Radio Capability Management Services url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.673/' servers: @@ -619,23 +619,27 @@ components: eventType: $ref: '#/components/schemas/EventType' manAssOpRequestlist: - $ref: '#/components/schemas/manAssOpRequestlist' + $ref: '#/components/schemas/ManAssOpRequestlist' minItems: 1 versionId: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + newDicEntries: + type: array + items: + $ref: '#/components/schemas/DicEntryData' + minItems: 1 - manAssOpRequestlist: + ManAssOpRequestlist: description: Manufacturer Assigned operation requested list type: object oneOf: - required: [plmnAssiUeRadioCapId] - - required: [typeAllocationCod] + - required: [typeAllocationCode] properties: plmnAssiUeRadioCapId: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnAssiUeRadioCapId' - minItems: 1 typeAllocationCode: type: array items: diff --git a/TS32291_Nchf_ConvergedCharging.yaml b/TS32291_Nchf_ConvergedCharging.yaml index 922c173..d35d75d 100644 --- a/TS32291_Nchf_ConvergedCharging.yaml +++ b/TS32291_Nchf_ConvergedCharging.yaml @@ -1,13 +1,13 @@ openapi: 3.0.0 info: title: Nchf_ConvergedCharging - version: 3.2.0-alpha.4 + version: 3.2.0-alpha.5 description: | ConvergedCharging Service © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > - 3GPP TS 32.291 V18.4.0: Telecommunication management; Charging management; + 3GPP TS 32.291 V18.5.0: Telecommunication management; Charging management; 5G system, charging service; Stage 3. url: 'http://www.3gpp.org/ftp/Specs/archive/32_series/32.291/' servers: @@ -318,6 +318,16 @@ components: $ref: '#/components/schemas/ProseChargingInformation' mMSChargingInformation: $ref: '#/components/schemas/MMSChargingInformation' + mBSSessionChargingInformation: + $ref: '#/components/schemas/MBSSessionChargingInformation' + tSNChargingInformation: + $ref: '#/components/schemas/TSNChargingInformation' + interCHFInformation: + $ref: '#/components/schemas/InterCHFInformation' + nSACFChargingInformation: + $ref: '#/components/schemas/NSACFChargingInformation' + nSSAAChargingInformation: + $ref: '#/components/schemas/NSSAAChargingInformation' required: - nfConsumerIdentification - invocationTimeStamp @@ -351,6 +361,10 @@ components: $ref: '#/components/schemas/RoamingQBCInformation' locationReportingChargingInformation: $ref: '#/components/schemas/LocationReportingChargingInformation' + mBSSessionChargingInformation: + $ref: '#/components/schemas/MBSSessionChargingInformation' + interCHFInformation: + $ref: '#/components/schemas/InterCHFInformation' required: - invocationTimeStamp - invocationSequenceNumber @@ -395,15 +409,21 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/RatingGroup' requestedUnit: $ref: '#/components/schemas/RequestedUnit' + allocateUnit: + $ref: '#/components/schemas/AllocateUnit' usedUnitContainer: type: array items: $ref: '#/components/schemas/UsedUnitContainer' minItems: 0 + allocatedUnit: + $ref: '#/components/schemas/AllocatedUnit' uPFID: $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' multihomedPDUAddress: $ref: '#/components/schemas/PDUAddress' + mBUPFID: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' required: - ratingGroup InvocationResult: @@ -443,6 +463,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/RatingGroup' grantedUnit: $ref: '#/components/schemas/GrantedUnit' + allocatedUnit: + $ref: '#/components/schemas/AllocatedUnit' triggers: type: array items: @@ -464,6 +486,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' announcementInformation: $ref: '#/components/schemas/AnnouncementInformation' + mBUPFID: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' required: - ratingGroup RequestedUnit: @@ -517,6 +541,33 @@ components: $ref: '#/components/schemas/NSPAContainerInformation' pC5ContainerInformation: $ref: '#/components/schemas/PC5ContainerInformation' + mBSContainerInformation: + $ref: '#/components/schemas/MBSContainerInformation' + required: + - localSequenceNumber + AllocateUnit: + type: object + properties: + allocateUnitIndicator: + $ref: '#/components/schemas/AllocateUnitIndicator' + nSACContainerInformation: + $ref: '#/components/schemas/NSACContainerInformation' + AllocatedUnit: + type: object + properties: + quotaManagementIndicator: + $ref: '#/components/schemas/QuotaManagementIndicator' + triggers: + type: array + items: + $ref: '#/components/schemas/Trigger' + minItems: 0 + triggerTimestamp: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + localSequenceNumber: + type: integer + nSACContainerInformation: + $ref: '#/components/schemas/NSACContainerInformation' required: - localSequenceNumber GrantedUnit: @@ -582,11 +633,11 @@ components: chargingId: $ref: 'TS29571_CommonData.yaml#/components/schemas/ChargingId' sMFchargingId: - type: string + $ref: 'TS29571_CommonData.yaml#/components/schemas/SmfChargingId' homeProvidedChargingId: $ref: 'TS29571_CommonData.yaml#/components/schemas/ChargingId' sMFHomeProvidedChargingId: - type: string + $ref: 'TS29571_CommonData.yaml#/components/schemas/SmfChargingId' userInformation: $ref: '#/components/schemas/UserInformation' userLocationinfo: @@ -693,6 +744,12 @@ components: $ref: '#/components/schemas/SNPNInformation' 5GMulticastService: $ref: '#/components/schemas/5GMulticastService' + 5GSBridgeInformation: + $ref: '#/components/schemas/5GSBridgeInformation' + satelliteAccessIndicator: + type: boolean + satelliteBackhaulInformation: + $ref: '#/components/schemas/SatelliteBackhaulInformation' required: - pduSessionID - dnnId @@ -787,6 +844,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' hPlmnSNSSAI: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + alternativeSNSSAI: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' required: - sNSSAI PDUAddress: @@ -1068,6 +1127,17 @@ components: properties: internalGroupIdentifier: $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId' + 5GSBridgeInformation: + type: object + properties: + bridgeId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint64' + nWTTPortNumber: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint16' + dSTTPortNumber: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint16' + required: + - bridgeId NEFChargingInformation: type: object properties: @@ -1112,6 +1182,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnIdNid' accessType: $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' + n3IwfFqdn: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Fqdn' required: - sNPNID RegistrationChargingInformation: @@ -1165,6 +1237,12 @@ components: items: $ref: '#/components/schemas/NSSAIMap' minItems: 0 + alternativeNSSAIMap: + type: array + items: + $ref: '#/components/schemas/AlternativeNSSAIMap' + minItems: 0 + amfUeNgapId: type: integer ranUeNgapId: @@ -1178,6 +1256,8 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/CagId' minItems: 0 + satelliteAccessIndicator: + type: boolean required: - registrationMessagetype PSCellInformation: @@ -1197,6 +1277,16 @@ components: required: - servingSnssai - homeSnssai + AlternativeNSSAIMap: + type: object + properties: + snssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + alternativeSnssai: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + required: + - snssai + - alternativeSnssai N2ConnectionChargingInformation: type: object properties: @@ -1251,6 +1341,8 @@ components: rrcEstCause: type: string pattern: '^[0-9a-fA-F]+$' + satelliteAccessIndicator: + type: boolean required: - n2ConnectionMessageType LocationReportingChargingInformation: @@ -1273,6 +1365,8 @@ components: additionalProperties: $ref: 'TS29571_CommonData.yaml#/components/schemas/PresenceInfo' minProperties: 0 + satelliteAccessIndicator: + type: boolean required: - locationReportingMessageType N2ConnectionMessageType: @@ -1652,6 +1746,8 @@ components: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' lCMEndTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + satelliteBackhaulInformation: + $ref: '#/components/schemas/SatelliteBackhaulInformation' MMSChargingInformation: type: object properties: @@ -1727,6 +1823,70 @@ components: type: array items: $ref: '#/components/schemas/SMAddressInfo' + TSNChargingInformation: + type: object + properties: + dNN: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' + sNSSAI: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' + internalGroupIdentifier: + $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId' + externalIndividualIdList: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' + minItems: 0 + 5GSBridgeInformation: + $ref: '#/components/schemas/5GSBridgeInformation' + tSNQoSInformation: + $ref: '#/components/schemas/TSNQoSInformation' + tSCAssistanceInformation: + $ref: '#/components/schemas/TSCAssistanceInformation' + timeSynchronizationInformation: + $ref: '#/components/schemas/TimeSynchronizationInformation' + + TSNQoSInformation: + type: object + properties: + priority: + type: integer + bridgeDelay: + type: array + items: + type: integer + minItems: 0 + + TSCAssistanceInformation: + type: object + properties: + flowDirection: + $ref: '#/components/schemas/TSCFlowDirection' + periodicity: + type: integer + + TimeSynchronizationInformation: + type: object + properties: + distributionMethod: + $ref: '#/components/schemas/TimeDistributionMethod' + tSNtimeDomainNumber: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' + temporalValidityInformation: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' + spatialValidityInformation: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Tai' + minItems: 0 + timeSynchronizationErrorBudget: + type: integer + synchronizationState: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SynchronizationState' + clockQuality: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ClockQuality' + parentTimeSource: + $ref: 'TS29571_CommonData.yaml#/components/schemas/TimeSource' PC5ContainerInformation: type: object @@ -1861,7 +2021,45 @@ components: minItems: 0 required: - aPIName - + InterCHFInformation: + type: object + properties: + remoteCHFResource: + $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' + originalNFConsumerId: + $ref: '#/components/schemas/NFIdentification' + NSACFChargingInformation: + type: object + properties: + nSACChargingIndicator: + type: boolean + NSACContainerInformation: + type: object + properties: + numberOfUEs: + type: integer + numberOfPDUs: + type: integer + NSSAAChargingInformation: + type: object + properties: + nSSAAMessageType: + $ref: '#/components/schemas/NSSAAMessageType' + userIdentification: + $ref: '#/components/schemas/UserInformation' + aAAPAddress: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ServerAddressingInfo' + aAASAddress: + $ref: 'TS29571_CommonData.yaml#/components/schemas/ServerAddressingInfo' + eAPIDResponse: + type: string + eAPauthstatus: + $ref: 'TS29571_CommonData.yaml#/components/schemas/AuthStatus' + aMFId: + $ref: 'TS29571_CommonData.yaml#/components/schemas/AmfId' + required: + - nSSAAMessageType + - userIdentification PFIContainerInformation: type: object properties: @@ -1903,7 +2101,7 @@ components: changeCondition: type: string radioResourcesId: - $ref: '#/components/schemas/RadioResourcesId' + $ref: '#/components/schemas/RadioResourcesIndicator' radioFrequency: type: string pC5RadioTechnology: @@ -2028,7 +2226,7 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' minItems: 0 - optionalCapability : + optionalCapability : type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint32' @@ -2157,6 +2355,73 @@ components: items: $ref: 'TS29571_CommonData.yaml#/components/schemas/MbsSessionId' minItems: 1 + MBSSessionChargingInformation: + type: object + properties: + mBSSessionID: + $ref: 'TS29571_CommonData.yaml#/components/schemas/MbsSessionId' + mBSServiceType: + $ref: 'TS29571_CommonData.yaml#/components/schemas/MbsServiceType' + serviceArea: + $ref: '#/components/schemas/ServiceArea' + mBSStartTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + mBSEndTime: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + servingNetworkFunctionID: + $ref: '#/components/schemas/ServingNetworkFunctionID' + required: + - mBSSessionID + - mBSServiceType + ServiceArea: + type: object + properties: + mBSServiceArea: + $ref: 'TS29571_CommonData.yaml#/components/schemas/MbsServiceArea' + uPFIDs: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' + minItems: 0 + ranNodeIDs: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/GlobalRanNodeId' + minItems: 0 + MBSContainerInformation: + type: object + properties: + timeofFirstUsage: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + timeofLastUsage: + $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' + qoSInformation: + $ref: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/QosData' + establishedConnectionInfo: + $ref: '#/components/schemas/EstablishedConnectionInfo' + EstablishedConnectionInfo: + type: object + properties: + uPFIDs: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' + minItems: 0 + ranNodeIDs: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/GlobalRanNodeId' + minItems: 0 + SatelliteBackhaulInformation: + type: object + properties: + satelliteBackhaulCategory: + type: array + items: + $ref: 'TS29571_CommonData.yaml#/components/schemas/SatelliteBackhaulCategory' + minItems: 0 + gEOSatelliteID: + $ref: 'TS29571_CommonData.yaml#/components/schemas/GeoSatelliteId' NotificationType: anyOf: - type: string @@ -2189,6 +2454,9 @@ components: - PCF - UDM - UPF + - TSN_AF + - TSCTSF + - MB_SMF - type: string ChargingCharacteristicsSelectionMode: anyOf: @@ -2202,7 +2470,7 @@ components: anyOf: - type: string enum: - # SMF TriggerType + # SMF TriggerType - QUOTA_THRESHOLD - QHT - FINAL @@ -2250,7 +2518,8 @@ components: - MBS_DELIVERY_METHOD_CHANGE - LEAVE_MULTICAST - VSMF_CHANGE - # IMS TriggerType + - SNSSAI_REPLACEMENT + # IMS TriggerType - SIP_INVITE - SIP_RE-INVITE_OR_UPDATE - SIP_2XX_ACKNOWLEDGING @@ -2261,6 +2530,19 @@ components: - ABORTING_A_SIP_SESSION_SET-UP - SIP_3XX_FINAL_OR_REDIRECTION_RESPONSE - SIP_4XX_5XX_OR_6XX_FINAL_RESPONSE + # MB-SMF TriggerType + - ADDITION_OF_NG_RAN + - REMOVAL_OF_NG_RAN + - NSAC_THRESHOLD_INITIAL + - NSAC_THRESHOLD_UPWARDS_REACHED + - NSAC_THRESHOLD_UPWARDS_CROSSED + - NSAC_THRESHOLD_DOWNWARDS_CROSSED + - NSAC_QUOTA_THRESHOLD + - NSAC_QUOTA_EXHAUSTED + - NSAC_VALIDITY_TIME + - NSAC_QHT + - NSAC_THRESHOLD_TERMINATION + - NS_TERMINATION - type: string FinalUnitAction: anyOf: @@ -2751,7 +3033,7 @@ components: - 1000_METER - UNUSED - type: string - RadioResourcesId: + RadioResourcesIndicator: anyOf: - type: string enum: @@ -2765,3 +3047,32 @@ components: - SHARED - INDIVIDUAL - type: string + TSCFlowDirection: + anyOf: + - type: string + enum: + - UPLINK + - DOWNLINK + - type: string + TimeDistributionMethod: + anyOf: + - type: string + enum: + - GPTP + - ASTI + - type: string + NSSAAMessageType: + anyOf: + - type: string + enum: + - Authenticate + - Re-Authentication-Notification + - Revocation Notification + - type: string + AllocateUnitIndicator: + anyOf: + - type: string + enum: + - CHF_DETERMINED + - CTF_DETERMINED + - type: string