openapi: 3.2.0 info: title: 3gpp-traffic-influence Individual Traffic Influence Subscription API version: 1.4.1 description: "API for AF traffic influence \n© 2026, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). \nAll rights reserved.\n" servers: - url: '{apiRoot}/3gpp-traffic-influence/v1' variables: apiRoot: default: https://example.com description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122. security: - {} - oAuth2ClientCredentials: [] tags: - name: Individual Traffic Influence Subscription paths: /{afId}/subscriptions/{subscriptionId}: 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 get: summary: read an active subscriptions for the SCS/AS and the subscription Id operationId: ReadAnSubscription tags: - Individual Traffic Influence Subscription responses: '200': description: OK (Successful get the active subscription) content: application/json: schema: $ref: '#/components/schemas/TrafficInfluSub' '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 Traffic Influence Subscription requestBody: description: Parameters to update/replace the existing subscription required: true content: application/json: schema: $ref: '#/components/schemas/TrafficInfluSub' responses: '200': description: OK (Successful update of the subscription) content: application/json: schema: $ref: '#/components/schemas/TrafficInfluSub' '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: Partially updates/replaces an existing subscription resource operationId: PartialUpdateAnSubscription tags: - Individual Traffic Influence Subscription requestBody: required: true content: application/merge-patch+json: schema: $ref: '#/components/schemas/TrafficInfluSubPatch' responses: '200': description: OK. The subscription was modified successfully. content: application/json: schema: $ref: '#/components/schemas/TrafficInfluSub' '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: Deletes an already existing subscription operationId: DeleteAnSubscription tags: - Individual Traffic Influence Subscription 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 components: schemas: TrafficInfluSub: description: Represents a traffic influence subscription. type: object properties: afServiceId: type: string description: Identifies a service on behalf of which the AF is issuing the request. afAppId: type: string description: Identifies an application. afTransId: type: string description: Identifies an NEF Northbound interface transaction, generated by the AF. appReloInd: type: boolean description: 'Identifies whether an application can be relocated once a location of the application has been selected. ' dnn: $ref: TS29571_CommonData.yaml#/components/schemas/Dnn snssai: $ref: TS29571_CommonData.yaml#/components/schemas/Snssai externalGroupId: $ref: TS29122_CommonData.yaml#/components/schemas/ExternalGroupId externalGroupIds: type: array items: $ref: TS29122_CommonData.yaml#/components/schemas/ExternalGroupId minItems: 1 description: Each element identifies a group of users. extSubscCats: type: array items: type: string minItems: 1 anyUeInd: type: boolean description: 'Identifies whether the AF request applies to any UE. This attribute shall set to "true" if applicable for any UE, otherwise, set to "false". ' subscribedEvents: type: array items: $ref: '#/components/schemas/SubscribedEvent' minItems: 1 description: Identifies the requirement to be notified of the event(s). gpsi: $ref: TS29571_CommonData.yaml#/components/schemas/Gpsi ipv4Addr: $ref: TS29122_CommonData.yaml#/components/schemas/Ipv4Addr ipDomain: type: string ipv6Addr: $ref: TS29122_CommonData.yaml#/components/schemas/Ipv6Addr macAddr: $ref: TS29571_CommonData.yaml#/components/schemas/MacAddr48 dnaiChgType: $ref: TS29571_CommonData.yaml#/components/schemas/DnaiChangeType notificationDestination: $ref: TS29122_CommonData.yaml#/components/schemas/Link requestTestNotification: type: boolean description: 'Set to true by the SCS/AS to request the NEF to send a test notification as defined in clause 5.2.5.3. Set to false or omitted otherwise. ' websockNotifConfig: $ref: TS29122_CommonData.yaml#/components/schemas/WebsockNotifConfig self: $ref: TS29122_CommonData.yaml#/components/schemas/Link trafficDataSets: type: object additionalProperties: $ref: '#/components/schemas/TrafficDataSet' minProperties: 2 description: 'Contains multiple sets of traffic filters with the corresponding N6 traffic routing requirements. The key of the map shall be the value of the setId attribute of the TrafficDataSet data structure. ' trafficFilters: type: array items: $ref: TS29122_CommonData.yaml#/components/schemas/FlowInfo minItems: 1 description: Identifies IP packet filters. ethTrafficFilters: type: array items: $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription minItems: 1 description: Identifies Ethernet packet filters. trafficRoutes: type: array items: $ref: TS29571_CommonData.yaml#/components/schemas/RouteToLocation minItems: 1 description: Identifies the N6 traffic routing requirement. sfcIdDl: type: string description: 'Reference to a pre-configured steering of user traffic to service function chain in downlink. ' sfcIdUl: type: string description: 'Reference to a pre-configured steering of user traffic to service function chain in uplink. ' metadata: $ref: TS29571_CommonData.yaml#/components/schemas/Metadata tfcCorrInd: type: boolean tempValidities: type: array items: $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TemporalValidity validGeoZoneIds: type: array items: type: string minItems: 1 description: 'Identifies a geographic zone that the AF request applies only to the traffic of UE(s) located in this specific zone. ' deprecated: true geoAreas: type: array items: $ref: TS29522_AMPolicyAuthorization.yaml#/components/schemas/GeographicalArea minItems: 1 description: Identifies geographical areas within which the AF request applies. afAckInd: type: boolean addrPreserInd: type: boolean simConnInd: type: boolean description: 'Indicates whether simultaneous connectivity should be temporarily maintained for the source and target PSA. ' simConnTerm: $ref: TS29571_CommonData.yaml#/components/schemas/DurationSec maxAllowedUpLat: $ref: TS29571_CommonData.yaml#/components/schemas/Uinteger easIpReplaceInfos: type: array items: $ref: TS29571_CommonData.yaml#/components/schemas/EasIpReplacementInfo minItems: 1 description: Contains EAS IP replacement information. easRedisInd: type: boolean description: 'Indicates the EAS rediscovery is required for the application if it is included and set to "true". ' eventReq: $ref: TS29523_Npcf_EventExposure.yaml#/components/schemas/ReportingInformation eventReports: type: array items: $ref: '#/components/schemas/EventNotification' minItems: 1 candDnaiInd: type: boolean description: 'Indicates whether the reporting of the candidate DNAI(s) is requested. true indicates that the reporting of the candidate DNAI(s) is requested for the PDU session. false indicates that the reporting of the candidate DNAI(s) is not requested for the PDU session. The default value is false if this attribute is omitted. ' tfcCorreInfo: $ref: TS29519_Application_Data.yaml#/components/schemas/TrafficCorrelationInfo plmnId: $ref: TS29571_CommonData.yaml#/components/schemas/PlmnId portNumber: $ref: TS29122_CommonData.yaml#/components/schemas/Port n6DelayInd: type: boolean hHndlgControInfo: $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/AfHeaderHandlingControlInfo suppFeat: $ref: TS29571_CommonData.yaml#/components/schemas/SupportedFeatures allOf: - oneOf: - required: - afAppId - required: - trafficFilters - required: - ethTrafficFilters - required: - trafficDataSets - oneOf: - required: - ipv4Addr - required: - ipv6Addr - required: - macAddr - required: - gpsi - required: - externalGroupId - required: - anyUeInd anyOf: - not: required: - subscribedEvents - required: - notificationDestination TrafficDataSetRm: description: 'This data type is defined in the same way as the TrafficDataSet data, but with the OpenAPI nullable property set to true. Removable attributes trafficFilters and ethTrafficFilters and trafficRoutes are defined as nullable in the OpenAPI. ' properties: setId: type: string trafficFilters: type: - array - 'null' items: $ref: TS29122_CommonData.yaml#/components/schemas/FlowInfo minItems: 1 ethTrafficFilters: type: - array - 'null' items: $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription minItems: 1 trafficRoutes: type: - array - 'null' items: $ref: TS29571_CommonData.yaml#/components/schemas/RouteToLocation minItems: 1 required: - setId TrafficInfluSubPatch: description: 'Represents parameters to request the modification of a traffic influence subscription resource. ' type: object properties: appReloInd: type: - boolean - 'null' description: 'Identifies whether an application can be relocated once a location of the application has been selected. ' trafficDataSets: type: object additionalProperties: $ref: '#/components/schemas/TrafficDataSetRm' minProperties: 1 description: 'Contains one or several set(s) of traffic filters with the corresponding N6 traffic routing requirements. The key of the map shall be the value of the setId attribute of the TrafficDataSet data structure. ' trafficFilters: type: array items: $ref: TS29122_CommonData.yaml#/components/schemas/FlowInfo minItems: 1 description: Identifies IP packet filters. ethTrafficFilters: type: array items: $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription minItems: 1 description: Identifies Ethernet packet filters. trafficRoutes: type: array items: $ref: TS29571_CommonData.yaml#/components/schemas/RouteToLocation minItems: 1 description: Identifies the N6 traffic routing requirement. sfcIdDl: type: - string - 'null' description: 'Reference to a pre-configured steering of user traffic to service function chain in downlink. ' sfcIdUl: type: - string - 'null' description: 'Reference to a pre-configured steering of user traffic to service function chain in uplink. ' metadata: $ref: TS29571_CommonData.yaml#/components/schemas/Metadata tfcCorrInd: type: - boolean - 'null' tempValidities: type: - array - 'null' items: $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TemporalValidity minItems: 1 validGeoZoneIds: type: - array - 'null' items: type: string minItems: 1 description: 'Identifies a geographic zone that the AF request applies only to the traffic of UE(s) located in this specific zone. ' deprecated: true geoAreas: type: - array - 'null' items: $ref: TS29522_AMPolicyAuthorization.yaml#/components/schemas/GeographicalArea minItems: 1 description: Identifies geographical areas within which the AF request applies. afAckInd: type: - boolean - 'null' addrPreserInd: type: - boolean - 'null' simConnInd: type: boolean description: 'Indicates whether simultaneous connectivity should be temporarily maintained for the source and target PSA. ' simConnTerm: $ref: TS29571_CommonData.yaml#/components/schemas/DurationSec maxAllowedUpLat: $ref: TS29571_CommonData.yaml#/components/schemas/UintegerRm easIpReplaceInfos: type: - array - 'null' items: $ref: TS29571_CommonData.yaml#/components/schemas/EasIpReplacementInfo minItems: 1 description: Contains EAS IP replacement information. easRedisInd: type: boolean description: 'Indicates the EAS rediscovery is required for the application if it is included and set to "true". ' notificationDestination: $ref: TS29122_CommonData.yaml#/components/schemas/Link eventReq: $ref: TS29523_Npcf_EventExposure.yaml#/components/schemas/ReportingInformation tfcCorreInfo: $ref: TS29519_Application_Data.yaml#/components/schemas/TrafficCorrelationInfo n6DelayInd: type: - boolean - 'null' hHndlgControInfo: $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/AfHeaderHandlingControlInfo EventNotification: description: Represents a traffic influence event notification. type: object properties: afTransId: type: string description: Identifies an NEF Northbound interface transaction, generated by the AF. dnaiChgType: $ref: TS29571_CommonData.yaml#/components/schemas/DnaiChangeType sourceTrafficRoute: $ref: TS29571_CommonData.yaml#/components/schemas/RouteToLocation subscribedEvent: $ref: '#/components/schemas/SubscribedEvent' targetTrafficRoute: $ref: TS29571_CommonData.yaml#/components/schemas/RouteToLocation sourceDnai: $ref: TS29571_CommonData.yaml#/components/schemas/Dnai targetDnai: $ref: TS29571_CommonData.yaml#/components/schemas/Dnai traffRouteReqOutcome: $ref: TS29508_Nsmf_EventExposure.yaml#/components/schemas/TraffRouteReqOutcome candidateDnais: type: array items: $ref: TS29571_CommonData.yaml#/components/schemas/Dnai minItems: 1 description: The candidate DNAI(s) for the PDU Session. candDnaisPrioInd: type: boolean description: 'Indicates whether the candidate DNAI(s) provided within the candidateDnais attribute are in descending priority order, i.e., the lower the array index of the candidateDnais attribute the higher the priority of the respective DNAI. true indicates that the candidate DNAI(s) provided within the candidateDnais attribute are in descending priority order. false indicates that the candidate DNAI(s) provided within the candidateDnais attribute are not in descending priority order. The default value is false if this attribute is omitted. This attribute may only be present if the candidateDnais attribute is also present and the dnaiChgType attribute is set to the value "EARLY". ' easRediscoverInd: type: boolean description: 'Indication of EAS re-discovery. If present and set to "true", it indicates the EAS re-discovery is performed, e.g. due to change of common EAS. Default value is "false" if omitted. May be included for event "UP_PATH_CHANGE". ' gpsi: $ref: TS29571_CommonData.yaml#/components/schemas/Gpsi srcUeIpv4Addr: $ref: TS29122_CommonData.yaml#/components/schemas/Ipv4Addr srcUeIpv6Prefix: $ref: TS29571_CommonData.yaml#/components/schemas/Ipv6Prefix tgtUeIpv4Addr: $ref: TS29122_CommonData.yaml#/components/schemas/Ipv4Addr tgtUeIpv6Prefix: $ref: TS29571_CommonData.yaml#/components/schemas/Ipv6Prefix ueMac: $ref: TS29571_CommonData.yaml#/components/schemas/MacAddr48 afAckUri: $ref: TS29122_CommonData.yaml#/components/schemas/Link offloadPlmnId: $ref: TS29571_CommonData.yaml#/components/schemas/PlmnId hDnn: $ref: TS29571_CommonData.yaml#/components/schemas/Dnn hSnssai: $ref: TS29571_CommonData.yaml#/components/schemas/Snssai suppFeatures: $ref: TS29571_CommonData.yaml#/components/schemas/SupportedFeatures required: - subscribedEvent TrafficDataSet: description: 'Represents a set of traffic filters and the corresponding N6 traffic routing requirements. ' properties: setId: type: string trafficFilters: type: array items: $ref: TS29122_CommonData.yaml#/components/schemas/FlowInfo minItems: 1 ethTrafficFilters: type: array items: $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription minItems: 1 trafficRoutes: type: array items: $ref: TS29571_CommonData.yaml#/components/schemas/RouteToLocation minItems: 1 required: - setId - trafficRoutes oneOf: - required: - trafficFilters - required: - ethTrafficFilters SubscribedEvent: anyOf: - type: string enum: - UP_PATH_CHANGE - TRAFF_ROUTE_REQ_OUTCOME - SIM_CONN_FAIL - 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 UP path management events for which the AF requests to be notified. \nPossible values are:\n- UP_PATH_CHANGE: The AF requests to be notified when the UP path changes for\n the PDU session.\n- TRAFF_ROUTE_REQ_OUTCOME: The AF requests to be notified of the installation outcome of\n the traffic routing requirements requested by the AF.\n- SIM_CONN_FAIL: The AF requests to be notified if the requested Simultaneous Connectivity\n over the source and the target PDU Session Anchor fails.\n" securitySchemes: oAuth2ClientCredentials: type: oauth2 flows: clientCredentials: tokenUrl: '{tokenUrl}' scopes: {} externalDocs: description: '3GPP TS 29.522 V19.6.0; 5G System; Network Exposure Function Northbound APIs. ' url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/