openapi: 3.0.0 info: title: 3gpp-time-sync version: 1.2.0 description: | API for time synchronization exposure. © 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > 3GPP TS 29.522 V19.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: - {} - oAuth2ClientCredentials: [] servers: - url: '{apiRoot}/3gpp-time-sync/v1' variables: apiRoot: default: https://example.com description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122. paths: /{afId}/subscriptions: get: summary: read all of the active subscriptions for the AF operationId: ReadAllSubscriptions tags: - Time Synchronization Exposure Subscriptions parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string responses: '200': description: OK (Successful get all of the active subscriptions for the AF) content: application/json: schema: type: array items: $ref: '#/components/schemas/TimeSyncExposureSubsc' minItems: 0 '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: Creates a new subscription resource operationId: CreateNewSubscription tags: - Time Synchronization Exposure Subscriptions parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string requestBody: description: new subscription creation required: true content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureSubsc' responses: '201': description: Created (Successful creation) content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureSubsc' 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: timeSyncSubsNotification: '{$request.body#/subsNotifUri}': post: requestBody: description: Notification for Time Synchronization Capability for a list of UEs. required: true content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureSubsNotif' responses: '204': description: Expected response to a successful callback processing without a 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' /{afId}/subscriptions/{subscriptionId}: get: summary: read an active subscription for the AF and the subscription Id operationId: ReadAnSubscription tags: - Individual Time Synchronization Exposure Subscription parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: subscriptionId in: path description: Identifier of the subscription resource required: true schema: type: string responses: '200': description: OK (Successful get the active subscription) content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureSubsc' '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: Fully updates/replaces an existing subscription resource operationId: FullyUpdateAnSubscription tags: - Individual Time Synchronization Exposure Subscription parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: subscriptionId in: path description: Identifier of the subscription resource required: true schema: type: string requestBody: description: Parameters to update/replace the existing subscription required: true content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureSubsc' responses: '200': description: OK (Successful deletion of the existing subscription) content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureSubsc' '204': description: > Successful case. The resource has been successfully updated and no additional content is to be sent in the response message. '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: Deletes an already existing subscription operationId: DeleteAnSubscription tags: - Individual Time Synchronization Exposure Subscription parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: subscriptionId in: path description: Identifier of the subscription resource required: true schema: type: string responses: '204': description: No Content (Successful deletion of the existing subscription) '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' /{afId}/subscriptions/{subscriptionId}/configurations: get: summary: read all of the active configurations for the AF operationId: ReadAllConfirguations tags: - Time Synchronization Exposure Configurations parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: subscriptionId description: > String identifying the individual synchronization Exposure Subscription resource in the NEF in: path required: true schema: type: string responses: '200': description: OK (Successful get all of the active configurations for the AF) content: application/json: schema: type: array items: $ref: '#/components/schemas/TimeSyncExposureConfig' minItems: 0 '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: Creates a new configuration resource operationId: CreateNewConfirguation tags: - Time Synchronization Exposure Configurations parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: subscriptionId description: > String identifying the individual synchronization Exposure Subscription resource in the NEF. in: path required: true schema: type: string requestBody: description: new configuration creation required: true content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureConfig' responses: '201': description: Created (Successful creation) content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureConfig' headers: Location: description: 'Contains the URI of the newly created resource' required: true schema: type: string '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: timeSyncConfigNotification: '{$request.body#/configNotifUri}': post: requestBody: description: Notification for Time Synchronization Service status. required: true content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureConfigNotif' responses: '204': description: Expected response to a successful callback processing without a 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' /{afId}/subscriptions/{subscriptionId}/configurations/{instanceReference}: get: summary: read an active subscription for the AF and the subscription Id operationId: ReadTimeSynSubscription tags: - Individual Time Synchronization Exposure Subscription parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: subscriptionId in: path description: Identifier of the subscription resource required: true schema: type: string - name: instanceReference in: path description: Identifier of the configuration resource required: true schema: type: string responses: '200': description: OK (Successful get the active subscription) content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureConfig' '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: Fully updates/replaces an existing configuration resource operationId: FullyUpdateAnConfiguration tags: - Individual Time Synchronization Exposure Configuration parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: subscriptionId in: path description: Identifier of the subscription resource required: true schema: type: string - name: instanceReference in: path description: Identifier of the configuration resource required: true schema: type: string requestBody: description: Parameters to update/replace the existing configuration required: true content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureConfig' responses: '200': description: OK (Successful deletion of the existing configuration) content: application/json: schema: $ref: '#/components/schemas/TimeSyncExposureConfig' '204': description: > Successful case. The resource has been successfully updated and no additional content is to be sent in the response message. '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: Deletes an already existing configuration operationId: DeleteAnConfiguration tags: - Individual Time Synchronization Exposure Configuration parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: subscriptionId in: path description: Identifier of the subscription resource required: true schema: type: string - name: instanceReference in: path description: Identifier of the configuration resource required: true schema: type: string responses: '204': description: No Content (Successful deletion of the existing configuration) '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: TimeSyncExposureSubsc: description: > Contains requested parameters for the subscription to the notification of time synchronization capability. type: object properties: exterGroupId: $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalGroupId' gpsis: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' minItems: 1 description: > Contains a list of UE for which the time synchronization capabilities is requested. anyUeInd: type: boolean description: > Any UE indication. This IE shall be present if the event subscription is applicable to any UE. Default value "false" is used, if not present. afServiceId: type: string description: Identifies a service on behalf of which the AF is issuing the request. dnn: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' snssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' subsNotifId: type: string description: Notification Correlation ID assigned by the AF. subsNotifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' subscribedEvents: type: array items: $ref: '#/components/schemas/SubscribedEvent' minItems: 1 description: Subscribed events eventFilters: type: array items: $ref: '#/components/schemas/EventFilter' minItems: 1 description: > Contains the filter conditions to match for notifying the event(s) of time synchronization capabilities for a list of UE(s). notifMethod: $ref: 'TS29508_Nsmf_EventExposure.yaml#/components/schemas/NotificationMethod' maxReportNbr: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' expiry: $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime' repPeriod: $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec' 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 of 3GPP TS 29.122. Set to false or omitted otherwise. websockNotifConfig: $ref: 'TS29122_CommonData.yaml#/components/schemas/WebsockNotifConfig' suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - subsNotifUri - subsNotifId oneOf: - required: [gpsis] - required: [anyUeInd] - required: [exterGroupId] TimeSyncCapability: description: Contains time synchronization capability. type: object properties: upNodeId: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint64' gmCapables: type: array items: $ref: '#/components/schemas/GmCapable' description: > Indicates whether user plane node supports acting as a gPTP and/or PTP grandmaster. asTimeRes: $ref: '#/components/schemas/AsTimeResource' ptpCapForUes: type: object additionalProperties: $ref: '#/components/schemas/PtpCapabilitiesPerUe' minProperties: 1 description: > Contains the PTP capabilities supported by each of the UE(s). The key of the map is the gpsi. required: - upNodeId anyOf: - required: [gmCapables] - required: [asTimeRes] TimeSyncExposureConfig: description: Contains the Time Synchronization Configuration parameters. type: object properties: upNodeId: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uint64' reqPtpIns: $ref: '#/components/schemas/PtpInstance' gmEnable: type: boolean description: > Indicates that the AF requests 5GS to act as a grandmaster for PTP or gPTP if it is included and set to true. gmPrio: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' timeDom: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' timeSyncErrBdgt: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger' configNotifId: type: string description: Notification Correlation ID assigned by the AF. configNotifUri: $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri' tempValidity: $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TemporalValidity' coverageArea: $ref: 'TS29571_CommonData.yaml#/components/schemas/SpatialValidityCond' clkQltDetLvl: $ref: 'TS29571_CommonData.yaml#/components/schemas/ClockQualityDetailLevel' clkQltAcptCri: $ref: 'TS29571_CommonData.yaml#/components/schemas/ClockQualityAcceptanceCriterion' required: - upNodeId - reqPtpIns - timeDom - configNotifId - configNotifUri TimeSyncExposureSubsNotif: description: Contains the notification of time synchronization capability. type: object properties: subsNotifId: type: string description: Notification Correlation ID assigned by the AF. eventNotifs: type: array items: $ref: '#/components/schemas/SubsEventNotification' minItems: 1 description: > Notifications about subscribed Individual Events. required: - subsNotifId - eventNotifs SubsEventNotification: description: Notifications about subscribed Individual Events. type: object properties: event: $ref: '#/components/schemas/SubscribedEvent' timeSyncCapas: type: array items: $ref: '#/components/schemas/TimeSyncCapability' minItems: 1 description: > Contains a list of time synchronization capabilities for the UE(s). required: - event TimeSyncExposureConfigNotif: description: Contains the notification of time synchronization service state. type: object properties: configNotifId: type: string description: Notification Correlation ID assigned by the AF. stateOfConfig: $ref: '#/components/schemas/StateOfConfiguration' required: - configNotifId - stateOfConfig PtpCapabilitiesPerUe: description: Contains the supported PTP capabilities per UE. type: object properties: gpsi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' ptpCaps: type: array items: $ref: '#/components/schemas/ReportedCapability' minItems: 1 description: > Contains the reported PTP capabilities for the UE. required: - gpsi - ptpCaps EventFilter: description: > Contains the filter conditions to match for notifying the event(s) of time synchronization capabilities. type: object properties: instanceTypes: type: array items: $ref: '#/components/schemas/InstanceType' minItems: 1 description: > Indicates the PTP instance type(s). transProtocols: type: array items: $ref: '#/components/schemas/Protocol' minItems: 1 description: > Indicates the transport protocol type(s). ptpProfiles: type: array items: type: string minItems: 1 description: > Identifies the supported PTP profiles. PtpInstance: description: Contains PTP instance configuration and activation requested by the AF. type: object properties: instanceType: $ref: '#/components/schemas/InstanceType' protocol: $ref: '#/components/schemas/Protocol' ptpProfile: type: string description: Identifies the PTP profile. portConfigs: type: array items: $ref: '#/components/schemas/ConfigForPort' minItems: 1 description: > Contains the configurations for the PTP port(s) in the PTP instance. required: - instanceType - protocol - ptpProfile ConfigForPort: description: Contains configuration for each port. type: object properties: gpsi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' n6Ind: type: boolean enum: - true ptpEnable: type: boolean description: > This is used to set the portDS.portEnable. If omitted, the default value as described in the PTP Profile is used. logSyncInter: type: integer description: > Specifies the mean time interval between successive Sync messages. logSyncInterInd: type: boolean description: > When set to "false", the value of "logSyncInter" attribute is used to set the initialLogSyncInterval as described in IEEE Std 802.1AS [46]. When set to "true", the value of "logSyncInter" attribute is used to set the mgtSettableLogSyncInterval as described in IEEE Std 802.1AS [46]. logAnnouInter: type: integer description: > Specifies the mean time interval between successive Announce messages. logAnnouInterInd: type: boolean description: > When set to "false", the value of "logAnnouInter" attribute is used to set the initialLogAnnounceInterval as described in IEEE 802.1AS [46]. When set to "true", the value of "logAnnouInter" attribute is used to set the mgtSettableLogAnnounceInterval as described in IEEE Std 802.1AS [46]. oneOf: - required: [gpsi] - required: [n6Ind] StateOfConfiguration: description: Contains the state of the time synchronization configuration. type: object properties: stateOfNwtt: type: boolean description: > When the PTP port state is Leader, Follower or Passive, it is included and set to true 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). type: array items: $ref: '#/components/schemas/StateOfDstt' minItems: 1 StateOfDstt: description: Contains the PTP port state of a DS-TT. type: object properties: gpsi: $ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi' state: type: boolean description: > When the PTP port state is Leader, Follower or Passive, it is included and set to true 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. clkQltIndOfDstt: $ref: '#/components/schemas/AcceptanceCriteriaResultIndication' required: - gpsi - state AvailReport: description: Contains the availability status for a UE/DS-TT. type: object properties: avStatus: $ref: '#/components/schemas/AvailStatus' Protocol: anyOf: - type: string enum: - ETH - IPV4 - IPV6 - 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: | Identifies the supported protocol. Possible values are: - ETH: Indicates Ethernet as defined in IEEE Std 1588 [45] Annex E is supported. - IPV4: Indicates IPv4 as defined in IEEE Std 1588 [45] Annex C is supported. - IPV6: Indicates IPv6 as defined in IEEE Std 1588 [45] Annex D is supported. GmCapable: anyOf: - type: string enum: - GPTP - PTP - 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: | Identifies the supported grandmaster. Possible values are: - GPTP: gPTP grandmaster is supported. - PTP: PTP grandmaste is supported. InstanceType: anyOf: - type: string enum: - BOUNDARY_CLOCK - E2E_TRANS_CLOCK - P2P_TRANS_CLOCK - P2P_RELAY_INSTANCE - 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: | Identifies the supported PTP instance type. Possible values are: - BOUNDARY_CLOCK: Indicates Boundary Clock as defined in IEEE Std 1588. - E2E_TRANS_CLOCK: Indicates End-to-End Transparent Clock as defined in IEEE Std 1588. - P2P_TRANS_CLOCK: Indicates Peer-to-Peer Transparent Clock as defined in IEEE Std 1588. - P2P_RELAY_INSTANCE: Indicates PTP Relay instance as defined in IEEE Std 802.1AS. SubscribedEvent: anyOf: - type: string enum: - AVAILABILITY_FOR_TIME_SYNC_SERVICE - 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: | Identifies the supported event. Possible values are: - AVAILABILITY_FOR_TIME_SYNC_SERVICE: 5GS and/or UE availability and capability for time synchronization service. AsTimeResource: anyOf: - type: string enum: - ATOMIC_CLOCK - GNSS - TERRESTRIAL_RADIO - SERIAL_TIME_CODE - PTP - NTP - HAND_SET - INTERNAL_OSCILLATOR - 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: | Identifies the supported 5G clock quality. Possible values are: - ATOMIC_CLOCK: Indicates atomic clock is supported. - GNSS: Indicates Global Navigation Satellite System is supported. - TERRESTRIAL_RADIO: Indicates terrestrial radio is supported. - SERIAL_TIME_CODE: Indicates serial time code is supported. - PTP: Indicates PTP is supported. - NTP: Indicates NTP is supported. - HAND_SET: Indicates hand set is supported. - INTERNAL_OSCILLATOR: Indicates internal oscillator is supported. - OTHER: Indicates other source of time is supported. AcceptanceCriteriaResultIndication: anyOf: - type: string enum: - ACCEPTABLE - NON_ACCEPTABLE - 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: | Identifies the supported acceptable / not acceptable indication. Possible values are: - ACCEPTABLE: PTP port in (g)PTP service meets the clock quality acceptance criteria. - NON_ACCEPTABLE: PTP port in (g)PTP service does not meet the clock quality acceptance criteria. AvailStatus: anyOf: - type: string enum: - PDU_SESSION_TERMINATION - 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: | Identifies the availability status. Possible values are: - PDU_SESSION_TERMINATION: The UE is not available for (g)PTP services because the PDU session is terminated. ReportedCapability: allOf: - $ref: '#/components/schemas/EventFilter' - $ref: '#/components/schemas/AvailReport' description: > Extends the EventFilter data type to indicate the availability status of the UE/DS-TT.