Namf_Location

The Namf_Location service is used by NF service consumers to request the AMF for initiating positioning requests and provide the location information. It is also used to subsequently notify the location change events towards the NF service consumers. The following are the key functionalities of this NF service:

  • Allow NFs to request the current geodetic and optionally civic location of a target UE.

  • Allow NFs to be notified of event information related to emergency sessions.

  • Allow NFs to request Network Provided Location Information (NPLI) and/or local time zone corresponding to the location of a target UE.

Reference: 3GPP TS 29.518 [15]

OpenAPI

OpenAPI Version: 3.0.0

info

Version: 1.0.0

Title: Namf_Location

Description: AMF Location Service

externalDocs

Description: 3GPP TS 29.518 V15.2.0; 5G System; Access and Mobility Management Services

URL: 'http://www.3gpp.org/ftp/Specs/archive/29_series/29.518/'

security

- {}

- oAuth2Clientcredentials:

- namf-loc

servers

URL: '{apiRoot}/namf-loc/v1'

Variables:

API Root:

Default: https://example.com

Description: apiRoot as defined in subclause subclause 4.4 of 3GPP TS 29.501

paths

ueContextId provide pos info

Method: Post

Summary: Namf_Location ProvidePositioningInfo service Operation

Tags:

- Individual UE context (Document)

Operation ID: ProvidePositioningInfo

Parameters:

- name: ueContextId

In: path

Description: UE Context Identifier

Required/Optional: true

Schema:

Type: string

pattern: '^(imsi-[0-9]{5,15}|nai-.+|imei-[0-9]{15}|imeisv-[0-9]{16}|.+)$'

Request Body:

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/RequestPosInfo'

Required/Optional: true

Responses:

'200' Expected response to a valid request

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/ProvidePosInfo'

'400': Reference 'TS29571_CommonData.yaml#/components/responses/400'

'403': Reference 'TS29571_CommonData.yaml#/components/responses/403'

'411': Reference 'TS29571_CommonData.yaml#/components/responses/411'

'413': Reference 'TS29571_CommonData.yaml#/components/responses/413'

'415': Reference 'TS29571_CommonData.yaml#/components/responses/415'

'429': Reference 'TS29571_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29571_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29571_CommonData.yaml#/components/responses/503'

'504': Reference 'TS29571_CommonData.yaml#/components/responses/504'

default:

Description: Unexpected error

Callbacks:

onUELocationNotification:

'{$request.body#/locationNotificationUri}':

Method: Post

Request Body:

Description: UE Location Event Notification

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/NotifiedPosInfo'

Responses:

'204' Expected response to a successful callback processing

'400': Reference 'TS29571_CommonData.yaml#/components/responses/400'

'403': Reference 'TS29571_CommonData.yaml#/components/responses/403'

'411': Reference 'TS29571_CommonData.yaml#/components/responses/411'

'413': Reference 'TS29571_CommonData.yaml#/components/responses/413'

'415': Reference 'TS29571_CommonData.yaml#/components/responses/415'

'429': Reference 'TS29571_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29571_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29571_CommonData.yaml#/components/responses/503'

ueContextId provide loc info

Method: Post

Summary: Namf_Location ProvideLocationInfo service Operation

Tags:

- Individual UE context (Document)

Operation ID: ProvideLocationInfo

Parameters:

- name: ueContextId

In: path

Description: UE Context Identifier

Required/Optional: true

Schema:

Type: string

pattern: '^(imsi-[0-9]{5,15}|nai-.+|imei-[0-9]{15}|imeisv-[0-9]{16}|.+)$'

Request Body:

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/RequestLocInfo'

Required/Optional: true

Responses:

'200' Expected response to a valid request

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/ProvideLocInfo'

'400': Reference 'TS29571_CommonData.yaml#/components/responses/400'

'403': Reference 'TS29571_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29571_CommonData.yaml#/components/responses/404'

'411': Reference 'TS29571_CommonData.yaml#/components/responses/411'

'413': Reference 'TS29571_CommonData.yaml#/components/responses/413'

'415': Reference 'TS29571_CommonData.yaml#/components/responses/415'

'429': Reference 'TS29571_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29571_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29571_CommonData.yaml#/components/responses/503'

default:

Description: Unexpected error

components

securitySchemes

oAuth2ClientCredentials

Type: oauth2

Flows:

clientCredentials:

tokenUrl: '{nrfApiRoot}/oauth2/token'

scopes:

namf-loc: Access to the Namf_Location API

schemas

RequestPosInfo

Type: object

Properties:

lcsClientType:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/ExternalClientType'

lcsLocation:

Reference: '#/components/schemas/LocationType'

supi:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Supi'

gpsi:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'

priority:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/LcsPriority'

lcsQoS:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/LocationQoS'

velocityRequested:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/VelocityRequested'

lcsSupportedGADShapes:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/SupportedGADShapes'

locationNotificationUri:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Uri'

supportedFeatures:

Reference: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'

Required:

- lcsClientType

- lcsLocation

ProvidePosInfo

Type: object

Properties:

locationEstimate:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea'

accuracyFulfilmentIndicator:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/AccuracyFulfilmentIndicator'

ageOfLocationEstimate:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/AgeOfLocationEstimate'

velocityEstimate:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/VelocityEstimate'

positioningDataList:

Type: array

Items:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/PositioningMethodAndUsage'

minItems: 0

maxItems: 9

gnssPositioningDataList:

Type: array

Items:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/GnssPositioningMethodAndUsage'

minItems: 0

maxItems: 9

ecgi:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Ecgi'

ncgi:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Ncgi'

targetServingNode:

Reference: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId'

civicAddress:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/CivicAddress'

barometricPressure:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/BarometricPressure'

altitude:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/Altitude'

supportedFeatures:

Reference: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'

NotifiedPosInfo

Type: object

Properties:

locationEvent:

Reference: '#/components/schemas/LocationEvent'

supi:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Supi'

gpsi:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'

pei:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Pei'

locationEstimate:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea'

ageOfLocationEstimate:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/AgeOfLocationEstimate'

velocityEstimate:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/VelocityEstimate'

positioningDataList:

Type: array

Items:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/PositioningMethodAndUsage'

minItems: 0

maxItems: 9

gnssPositioningDataList:

Type: array

Items:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/GnssPositioningMethodAndUsage'

minItems: 0

maxItems: 9

ecgi:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Ecgi'

ncgi:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Ncgi'

servingNode:

Reference: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId'

civicAddress:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/CivicAddress'

barometricPressure:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/BarometricPressure'

altitude:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/Altitude'

Required:

- locationEvent

RequestLocInfo

Type: object

Properties:

req5gsLoc:

Type: boolean

Default: false

reqCurrentLoc:

Type: boolean

Default: false

reqRatType:

Type: boolean

Default: false

reqTimeZone:

Type: boolean

Default: false

supportedFeatures:

Reference: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'

ProvideLocInfo

Type: object

Properties:

currentLoc:

Type: boolean

location:

Reference: 'TS29571_CommonData.yaml#/components/schemas/UserLocation'

geoInfo:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/GeographicArea'

locatoinAge:

Reference: 'TS29572_Nlmf_Location.yaml#/components/schemas/AgeOfLocationEstimate'

ratType:

Reference: 'TS29571_CommonData.yaml#/components/schemas/RatType'

timezone:

Reference: 'TS29571_CommonData.yaml#/components/schemas/TimeZone'

supportedFeatures:

Reference: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'

LocationType

anyOf:

- type: string

LocationEvent

anyOf:

- type: string