6 API Definitions

29.5553GPP5G Direct Discovery Name Management Services5G SystemRelease 18Stage 3TS

6.1 N5g-ddnmf_Discovery Service API

6.1.1 Introduction

The N5g-ddnmf_Discovery shall use the N5g-ddnmf_Discovery API.

The API URI of the N5g-ddnmf_Discovery API shall be:

{apiRoot}/<apiName>/<apiVersion>

The request URIs used in HTTP requests from the NF service consumer towards the NF service producer shall have the Resource URI structure defined in clause 4.4.1 of 3GPP TS 29.501 [6], i.e.:

{apiRoot}/<apiName>/<apiVersion>/<apiSpecificResourceUriPart>

with the following components:

– The {apiRoot} shall be set as described in 3GPP TS 29.501 [6].

– The <apiName> shall be "n5g-ddnmf-disc".

– The <apiVersion> shall be "v1".

– The <apiSpecificResourceUriPart> shall be set as described in clause 6.1.3.

6.1.2 Usage of HTTP

6.1.2.1 General

HTTP/2, IETF RFC 7540 [8], shall be used as specified in clause 5 of 3GPP TS 29.500 [5].

HTTP/2 shall be transported as specified in clause 5.3 of 3GPP TS 29.500 [5].

The OpenAPI [7] specification of HTTP messages and content bodies for the n5g-ddnmf-disc API is contained in Annex A.2.

6.1.2.2 HTTP standard headers

6.1.2.2.1 General

See clause 5.2.2 of 3GPP TS 29.500 [5] for the usage of HTTP standard headers.

6.1.2.2.2 Content type

JSON, IETF RFC 8259 [9], shall be used as content type of the HTTP bodies specified in the present specification as specified in clause 5.4 of 3GPP TS 29.500 [5]. The use of the JSON format shall be signalled by the content type "application/json".

"Problem Details" JSON object shall be used to indicate additional details of the error in a HTTP response body and shall be signalled by the content type "application/problem+json", as defined in IETF RFC 7807 [10].

JSON Merge Patch, as defined in IETF RFC 7396 [15], signalled by the content type "application/merge-patch+json".

6.1.2.3 HTTP custom headers

The mandatory HTTP custom header fields specified in clause 5.2.3.2 of 3GPP TS 29.500 [5] shall be supported, and the optional HTTP custom header fields specified in clause 5.2.3.3 of 3GPP TS 29.500 [4] may be supported.

6.1.3 Resources

6.1.3.1 Overview

This clause describes the structure for the Resource URIs and the resources and methods used for the service.

Figure 6.1.3.1-1 depicts the resource URIs structure for the N5g-ddnmf_Discovery API.

Figure 6.1.3.1-1: Resource URI structure of the N5g-ddnmf_Discovery API

Table 6.1.3.1-1 provides an overview of the resources and applicable HTTP methods.

Table 6.1.3.1-1: Resources and methods overview

Resource name

Resource URI

HTTP method or custom operation

Description

AnnounceData

/{ueId}/announce-authorize/{discEntryId}

PUT

Obtain the authorization to announce for a UE from the 5G DDNMF in the PLMN.

PATCH

Update or revoke the authorization from the 5G DDNMF for announcing in the PLMN.

MonitorData

/{ueId}/monitor-authorize/{discEntryId}

PUT

Obtain the authorization from the 5G DDNMF for monitoring for an UE in the PLMN.

PATCH

Update or revoke the authorization for the indicated UE to monitor in the PLMN.

DiscoveryData

/{ueId}/discovery-authorize/{discEntryId}

PUT

Obtain the authorization from the 5G DDNMF for a discoverer UE in the PLMN to operate Model B restricted discovery.

UeData

/{ueId}/match-report

match-report
(POST)

Obtain the information about the indicated discovery code from the 5G DDNMF.

6.1.3.2 Resource: AnnounceData

6.1.3.2.1 Description
6.1.3.2.2 Resource Definition

Resource URI: {apiRoot}/n5g-ddnmf-disc/<apiVersion>/{ueId}/announce-authorize/{discEntryId}

This resource shall support the resource URI variables defined in table 6.1.3.2.2-1.

Table 6.1.3.2.2-1: Resource URI variables for this resource

Name

Data type

Definition

apiRoot

string

See clause 6.1.1

ueId

VarUeId

Represents the Subscription Identifier SUPI or GPSI (see 3GPP TS 23.501 [2] clause 5.9.2)
pattern: See pattern of type VarUeId in 3GPP TS 29.571 [16]

discEntryId

DiscoveryEntryId

Represents Discovery Entry Id.

6.1.3.2.3 Resource Standard Methods

6.1.3.2.3.1 PUT

This method shall support the URI query parameters specified in table 6.1.3.2.3.1-1.

Table 6.1.3.2.3.1-1: URI query parameters supported by the PUT method on this resource

Name

Data type

P

Cardinality

Description

Applicability

n/a

This method shall support the request data structures specified in table 6.1.3.2.3.1-2 and the response data structures and response codes specified in table 6.1.3.2.3.1-3.

Table 6.1.3.2.3.1-2: Data structures supported by the PUT Request Body on this resource

Data type

P

Cardinality

Description

AnnounceAuthReqData

M

1

Contains the Announce Authorization Data for the indicated UE and indicated discovery entry.

Table 6.1.3.2.3.1-3: Data structures supported by the PUT Response Body on this resource

Data type

P

Cardinality

Response

codes

Description

n/a

201 Created

Upon success of creation of the resource, an empty response body shall be returned.

The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource.

n/a

204 No Content

Upon success of the update of the resource, an empty response body shall be returned.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

ProblemDetails

O

0..1

403 Forbidden

The "cause" attribute may be used to indicate one of the following application errors:

– PROSE_SERVICE_UNAUTHORIZED

See table 6.1.7.3-1 for the description of these errors.

NOTE 1: The manadatory HTTP error status code for the PUT method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [5] also apply.

NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [5].

Table 6.1.3.2.3.1-4: Headers supported by the 201 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

Contains the URI of the newly created resource, according to the structure: {apiRoot}/n5g-ddnmf-disc>/<apiVersion>/{ueId}/announce-authorize/{discEntryId}

Table 6.1.3.2.3.1-5: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

Table 6.1.3.2.3.1-6: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

6.1.3.2.3.2 PATCH

This method shall support the URI query parameters specified in table 6.1.3.2.3.2-1.

Table 6.1.3.2.3.2-1: URI query parameters supported by the PATCH method on this resource

Name

Data type

P

Cardinality

Description

Applicability

n/a

This method shall support the request data structures specified in table 6.1.3.2.3.2-2 and the response data structures and response codes specified in table 6.1.3.2.3.2-3.

Table 6.1.3.2.3.2-2: Data structures supported by the PATCH Request Body on this resource

Data type

P

Cardinality

Description

AnnounceUpdateData

M

1

Contains the Announce Authorization Data to update for the indicated UE and indicated discovery entry.

Table 6.1.3.2.3.2-3: Data structures supported by the PATCH Response Body on this resource

Data type

P

Cardinality

Response

codes

Description

n/a

204 No Content

Upon success, an empty response body shall be returned.

PatchResult

M

1

200 OK

Upon success, the execution report is returned. (NOTE 3)

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

ProblemDetails

O

0..1

404 Not Found

The "cause" attribute may be used to indicate one of the following application errors:

– CONTEXT_NOT_FOUND

See table 6.1.7.3-1 for the description of these errors.

ProblemDetails

O

0..1

422 Unprocessable Entity

The "cause" attribute may be used to indicate one of the following application errors:

– UNPROCESSABLE_REQUEST

NOTE 1: The manadatory HTTP error status code for the PATCH method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [5] also apply.

NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [5].

NOTE 3: If all the modification instructions in the PATCH request have been implemented, the 5G DDNMF shall respond with 204 No Content response; if some of the modification instructions in the PATCH request have been discarded, and the NF service consumer has included in the supported-feature query parameter the "PatchReport" feature number, the 5G DDNMF shall respond with PatchResult.

Table 6.1.3.2.3.2-4: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

Table 6.1.3.2.3.2-5: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

6.1.3.3 Resource: MonitorData

6.1.3.3.1 Description

This resource represents the Monitor data.

6.1.3.3.2 Resource Definition

Resource URI: {apiRoot}/n5g-ddnmf-disc/<apiVersion>/{ueId}/monitor-authorize/{discEntryId}

This resource shall support the resource URI variables defined in table 6.1.3.3.2-1.

Table 6.1.3.3.2-1: Resource URI variables for this resource

Name

Data type

Definition

apiRoot

string

See clause 6.1.1

ueId

VarUeId

Represents the Subscription Identifier SUPI or GPSI (see 3GPP TS 23.501 [2] clause 5.9.2)
pattern: See pattern of type VarUeId in 3GPP TS 29.571 [16]

discEntryId

DiscoveryEntryId

Represents Discovery Entry Id.

6.1.3.3.3 Resource Standard Methods

6.1.3.3.3.1 PUT

This method shall support the URI query parameters specified in table 6.1.3.3.3.1-1.

Table 6.1.3.3.3.1-1: URI query parameters supported by the PUT method on this resource

Name

Data type

P

Cardinality

Description

Applicability

n/a

This method shall support the request data structures specified in table 6.1.3.3.3.1-2 and the response data structures and response codes specified in table 6.1.3.3.3.1-3.

Table 6.1.3.3.3.1-2: Data structures supported by the PUT Request Body on this resource

Data type

P

Cardinality

Description

MonitorAuthReqData

M

1

Contains the Monitor Authorization Data for the indicated UE and indicated discovery entry.

Table 6.1.3.3.3.1-3: Data structures supported by the PUT Response Body on this resource

Data type

P

Cardinality

Response

codes

Description

MonitorAuthRespData

M

1

201 Created

Upon success of creation of the resource, a response body containing a representation of the authorized data to monitor for the UE shall be returned.

The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource.

n/a

204 No Content

Upon success of the update of the resource, an empty response body shall be returned.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

ProblemDetails

O

0..1

403 Forbidden

The "cause" attribute may be used to indicate one of the following application errors:

– PROSE_SERVICE_UNAUTHORIZED

See table 6.1.7.3-1 for the description of these errors.

ProblemDetails

O

0..1

404 Not Found

The "cause" attribute may be used to indicate one of the following application errors:

– APPLICATION_NOT_FOUND

See table 6.1.7.3-1 for the description of these errors.

NOTE 1: The manadatory HTTP error status code for the PUT method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [5] also apply.

NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [5].

Table 6.1.3.3.3.1-4: Headers supported by the 201 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

Contains the URI of the newly created resource, according to the structure: {apiRoot}/n5g-ddnmf-disc>/<apiVersion>/{ueId}/monitor-authorize/{discEntryId}

Table 6.1.3.3.3.1-5: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

Table 6.1.3.3.3.1-6: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

6.1.3.3.3.2 PATCH

This method shall support the URI query parameters specified in table 6.1.3.3.3.2-1.

Table 6.1.3.3.3.2-1: URI query parameters supported by the PATCH method on this resource

Name

Data type

P

Cardinality

Description

Applicability

n/a

This method shall support the request data structures specified in table 6.1.3.3.3.2-2 and the response data structures and response codes specified in table 6.1.3.3.3.2-3.

Table 6.1.3.3.3.2-2: Data structures supported by the PATCH Request Body on this resource

Data type

P

Cardinality

Description

MonitorUpdateData

M

1

Contains the Monitor Authorization Data to update for the indicated UE and indicated discovery entry.

Table 6.1.3.3.3.2-3: Data structures supported by the PUT Response Body on this resource

Data type

P

Cardinality

Response

codes

Description

n/a

204 No Content

Upon success, an empty response body shall be returned.

PatchResult

M

1

200 OK

Upon success, the execution report is returned. (NOTE 3)

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

ProblemDetails

O

0..1

404 Not Found

The "cause" attribute may be used to indicate one of the following application errors:

– CONTEXT_NOT_FOUND

See table 6.1.7.3-1 for the description of these errors.

ProblemDetails

O

0..1

422 Unprocessable Entity

The "cause" attribute may be used to indicate one of the following application errors:

– UNPROCESSABLE_REQUEST

NOTE 1: The manadatory HTTP error status code for the PATCH method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [5] also apply.

NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [5].

NOTE 3: If all the modification instructions in the PATCH request have been implemented, the 5G DDNMF shall respond with 204 No Content response; if some of the modification instructions in the PATCH request have been discarded, and the NF service consumer has included in the supported-feature query parameter the "PatchReport" feature number, the 5G DDNMF shall respond with PatchResult.

Table 6.1.3.3.3.2-4: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

Table 6.1.3.3.3.2-5: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

6.1.3.4 Resource: DiscoveryData

6.1.3.4.1 Description

This resource represents the Discovery Data.

6.1.3.4.2 Resource Definition

Resource URI: {apiRoot}/n5g-ddnmf-disc/<apiVersion>/{ueId}/discovery-authorize/{discEntryId}

This resource shall support the resource URI variables defined in table 6.1.3.4.2-1.

Table 6.1.3.4.2-1: Resource URI variables for this resource

Name

Data type

Definition

apiRoot

string

See clause 6.1.1

ueId

VarUeId

Represents the Subscription Identifier SUPI or GPSI (see 3GPP TS 23.501 [2] clause 5.9.2)
pattern: See pattern of type VarUeId in 3GPP TS 29.571 [16]

discEntryId

DiscoveryEntryId

Represents Discovery Entry Id.

6.1.3.4.3 Resource Standard Methods

6.1.3.4.3.1 PUT

This method shall support the URI query parameters specified in table 6.1.3.4.3.1-1.

Table 6.1.3.4.3.1-1: URI query parameters supported by the PUT method on this resource

Name

Data type

P

Cardinality

Description

Applicability

n/a

This method shall support the request data structures specified in table 6.1.3.4.3.1-2 and the response data structures and response codes specified in table 6.1.3.4.3.1-3.

Table 6.1.3.4.3.1-2: Data structures supported by the PUT Request Body on this resource

Data type

P

Cardinality

Description

DiscoveryAuthReqData

M

1

Contains the Discovery Authorization Data for the indicated discoverer UE and indicated discovery entry.

Table 6.1.3.4.3.1-3: Data structures supported by the PUT Response Body on this resource

Data type

P

Cardinality

Response

codes

Description

DiscoveryAuthRespData

M

1

201 Created

Upon success of creation of the resource, a response body containing a representation of the authorized data for the discoverer UE in the PLMN to operate Model B restricted discovery shall be returned.

The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource.

n/a

204 No Content

Upon success of the update of the resource, an empty response body shall be returned.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

ProblemDetails

O

0..1

403 Forbidden

The "cause" attribute may be used to indicate one of the following application errors:

– PROSE_SERVICE_UNAUTHORIZED

– ANNOUNCING_UNAUTHORIZED_IN_PLMN

See table 6.1.7.3-1 for the description of these errors.

ProblemDetails

O

0..1

404 Not Found

The "cause" attribute may be used to indicate one of the following application errors:

– APPLICATION_NOT_FOUND

See table 6.1.7.3-1 for the description of these errors.

NOTE 1: The manadatory HTTP error status code for the PUT method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [5] also apply.

NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [5].

Table 6.1.3.4.3.1-4: Headers supported by the 201 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

Contains the URI of the newly created resource, according to the structure: {apiRoot}/n5g-ddnmf-disc>/<apiVersion>/{ueId}/discovery -authorize/{discEntryId}

Table 6.1.3.4.3.1-5: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

Table 6.1.3.4.3.1-6: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

6.1.3.5 Resource: UeData (Custom operation)

6.1.3.5.1 Description

This resource represents the UE Data.

6.1.3.5.2 Resource Definition

Resource URI: {apiRoot}/n5g-ddnmf-disc/<apiVersion>/{ueId}

This resource shall support the resource URI variables defined in table 6.1.3.5.2-1.

Table 6.1.3.5.2-1: Resource URI variables for this resource

Name

Data type

Definition

apiRoot

string

See clause 6.1.1

ueId

VarUeId

Represents the Subscription Identifier SUPI or GPSI (see 3GPP TS 23.501 [2] clause 5.9.2)
pattern: See pattern of type VarUeId in 3GPP TS 29.571 [16]

6.1.3.5.3 Resource Standard Methods
6.1.3.5.4 Resource Custom Operations

No Standard Methods are supported for this resource.

6.1.3.5.4.1 Overview

Table 6.1.3.5.4.1-1: Custom operations

Operation name

Custom operation URI

Mapped HTTP method

Description

match-report

/{ueId}/match-report

POST

Obtain the information about the indicated discovery code from the 5G DDNMF.

6.1.3.5.4.2 Operation: match-report

6.1.3.5.4.2.1 Description

This operation is used to request the 5G DDNMF to resolve a matched ProSe Discovery Code(s) (ProSe Application Code for open discovery) and obtain the corresponding ProSe Application ID Name(s) and additional information, e.g. metadata.

6.1.3.5.4.2.2 Operation Definition

This operation shall support the request data structures specified in table 6.1.3.5.4.2.2-1 and the response data structure and response codes specified in table 6.1.3.5.4.2.2-2.

Table 6.1.3.5.4.2.2-1: Data structures supported by the POST Request Body on this resource

Data type

P

Cardinality

Description

MatchReportReqData

M

1

Contains the Match Report information.

Table 6.1.3.5.4.2.2-2: Data structures supported by the POST Response Body on this resource

Data type

P

Cardinality

Response

codes

Description

MatchReportRespData

M

1

200 OK

Upon success, a response body containing a representation of the Match Report Acknowledgement shall be returned.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

(NOTE 2)

ProblemDetails

O

0..1

403 Forbidden

The "cause" attribute may be used to indicate one of the following application errors:

– PROSE_SERVICE_UNAUTHORIZED

– ANNOUNCING_UNAUTHORIZED_IN_PLMN

– INVALID_APPLICATION_CODE

See table 6.1.7.3-1 for the description of these errors.

NOTE 1: The manadatory HTTP error status code for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [5] also apply.

NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [5].

Table 6.1.3.5.4.2.2-3: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

Table 6.1.3.5.4.2.2-4: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

An alternative URI of the resource located on an alternative service instance within the same 5G DDNMF or 5G DDNMF (service) set.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

6.1.4 Custom Operations without associated resources

In this release of this specification, no custom operations without associated resources are defined for the N5g-ddnmf_Discovery Service.

6.1.5 Notifications

6.1.5.1 General

Notifications shall comply to clause 6.2 of 3GPP TS 29.500 [5] and clause 4.6.2.3 of 3GPP TS 29.501 [6].

Table 6.1.5.1-1: Notifications overview

Notification

Callback URI

HTTP method or custom operation

Description

(service operation)

MonitorUpdateResult

{monitorUpdateResultCallbackRef}

POST

Report the monitoring revocation results.

MatchInformation

{matchInfoCallbackRef}

POST

Report an observed matching result to a NF service consumer

6.1.5.2 MonitorUpdateResult

6.1.5.2.1 Description

The MonitorUpdateResult is used by the 5G DDNMF to report the monitoring revocation results (e.g. 5G DDNMF)

6.1.5.2.2 Target URI

The Callback URI "{monitorUpdateResultCallbackRef}" shall be used with the callback URI variables defined in table 6.1.5.2.2-1.

Table 6.1.5.2.2-1: Callback URI variables

Name

Definition

monitorUpdateResultCallbackRef

String formatted as URI with the Callback Uri

6.1.5.2.3 Standard Methods

6.1.5.2.3.1 POST

This method shall support the request data structures specified in table 6.1.5.2.3.1-1 and the response data structures and response codes specified in table 6.1.5.2.3.1-1.

Table 6.1.5.2.3.1-2: Data structures supported by the POST Request Body

Data type

P

Cardinality

Description

MonitorUpdateResult

M

1

The MonitorUpdateResult shall contain the monitoring revocation results.

Table 6.1.5.2.3.1-3: Data structures supported by the POST Response Body

Data type

P

Cardinality

Response codes

Description

n/a

204 No Content

Upon success, an empty response body shall be returned.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The NF service consumer shall generate a Location header field containing a URI pointing to the endpoint of another NF service consumer to which the notification should be sent, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP.

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The NF service consumer shall generate a Location header field containing a URI pointing to the endpoint of another NF service consumer to which the notification should be sent, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP.

ProblemDetails

O

0..1

404 Not Found

The "cause" attribute may be used to indicate one of the following application errors:

– CONTEXT_NOT_FOUND

See table 6.1.7.3-1 for the description of these errors.

NOTE 1: The mandatory HTTP error status codes for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [5] also apply.

NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [5].

Table 6.1.5.2.3.1-4: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

A URI pointing to the endpoint of another NF service consumer to which the notification should be sent.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

Table 6.1.5.2.3.1-5: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

A URI pointing to the endpoint of another NF service consumer to which the notification should be sent.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

6.1.5.3 MatchInformation

6.1.5.3.1 Description

The POST method is used by the 5G DDNMF to report an observed matching result to a NF service consumer (e.g. 5G DDNMF).

6.1.5.3.2 Target URI

The Callback URI "{matchInfoCallbackRef}" shall be used with the callback URI variables defined in table 6.1.5.3.2-1.

Table 6.1.5.3.2-1: Callback URI variables

Name

Definition

matchInfoCallbackRef

String formatted as URI with the Callback Uri

6.1.5.3.3 Standard Methods

6.1.5.3.3.1 POST

This method shall support the request data structures specified in table 6.1.5.3.3.1-1 and the response data structures and response codes specified in table 6.1.5.3.3.1-1.

Table 6.1.5.3.3.1-1: Data structures supported by the POST Request Body

Data type

P

Cardinality

Description

MatchInformation

M

1

The MatchInformation shall contain a matching result of the corresponding operation.

Table 6.1.5.3.3.1-2: Data structures supported by the POST Response Body

Data type

P

Cardinality

Response codes

Description

n/a

204 No Content

Upon success, an empty response body shall be returned.

ProblemDetails

O

0..1

404 Not Found

The "cause" attribute may be used to indicate one of the following application errors:

– CONTEXT_NOT_FOUND

See table 6.1.7.3-1 for the description of these errors.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection. The NF service consumer shall generate a Location header field containing a URI pointing to the endpoint of another NF service consumer to which the notification should be sent, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP.

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection. The NF service consumer shall generate a Location header field containing a URI pointing to the endpoint of another NF service consumer to which the notification should be sent, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP.

NOTE 1: The mandatory HTTP error status codes for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [5] also apply.

NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [5].

Table 6.1.5.3.3.1-3: Headers supported by the 307 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

A URI pointing to the endpoint of another NF service consumer to which the notification should be sent.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

Table 6.1.5.3.3.1-4: Headers supported by the 308 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

A URI pointing to the endpoint of another NF service consumer to which the notification should be sent.

Or the same URI, if a request is redirected to the same target resource via a different SCP.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance ID towards which the request is redirected

6.1.6 Data Model

6.1.6.1 General

This clause specifies the application data model supported by the API.

Table 6.1.6.1-1 specifies the data types defined for the N5g-ddnmf service based interface protocol.

Table 6.1.6.1-1: N5g-ddnmf specific Data Types

Data type

Clause defined

Description

Applicability

AnnounceAuthReqData

6.1.6.2.2

Represents Data used to request the authorization to announce for a UE

AnnounceAuthRespData

6.1.6.2.3

Represents the obtained Announce Authorize Data for a UE

AnnounceDiscDataForOpen

6.1.6.2.4

Represents Data for open discovery used to request the authorization to announce for a UE

AnnounceDiscDataForRestricted

6.1.6.2.5

Represents Data for restricted discovery used to request the authorization to announce for a UE

AnnounceUpdateData

6.1.6.2.6

Represents Announce Authorize Data to update.

MonitorAuthReqData

6.1.6.2.7

Represents Data used to request the authorization to monitor for a UE

MonitorAuthRespData

6.1.6.2.8

Represents the obtained Monitor Authorize Data for a UE

MonitorDiscDataForOpen

6.1.6.2.9

Represents Data for open discovery used to request the authorization to monitor for a UE

MonitorDiscDataForRestricted

6.1.6.2.10

Represents Data for restricted discovery used to request the authorization to monitor for a UE

MonitorAuthDataForOpen

6.1.6.2.11

Represents the obtained Announce Authorize Data for open discovery for a UE

MonitorAuthDataForRestricted

6.1.6.2.12

Represents the obtained Announce Authorize Data for restricted discovery for a UE

MonitorUpdateData

6.1.6.2.13

Represents Monitor Authorize Data to update.

DiscoveryAuthReqData

6.1.6.2.14

Represents Data used to request the authorization for a discoverer UE

DiscoveryAuthRespData

6.1.6.2.15

Represents the obtained authorization Data for a discoverer UE.

DiscDataForRestricted

6.1.6.2.16

Represents Data for restricted discovery used to request the authorization for a discoverer UE

AuthDataForRestricted

6.1.6.2.17

Represents obtained authorization Data for restricted discovery for a discoverer UE

MatchReportReqData

6.1.6.2.18

Represents the Match Report information

MatchReportRespData

6.1.6.2.19

Represents Match Report Acknowledgement

MonitorUpdateResult

6.1.6.2.20

Represents the monitoring revocation results.

MatchInformation

6.1.6.2.21

Represents a report including a matching result, and the information that can be used for charging purpose

MatchInfoForOpen

6.1.6.2.22

Represents a report including a matching result, and the information that can be used for charging purpose for the open discovery type.

MatchInfoForRestricted

6.1.6.2.23

Represents a report including a matching result, and the information that can be used for charging purpose for the restricted discovery type.

RestrictedCodeSuffixPool

6.1.6.2.24

Contains the Restricted Code Suffix Pool.

RestrictedCodeSuffixRange

6.1.6.2.25

Contains a range of the Restricted Code Suffixes which are consecutive.

ProseApplicationCodeSuffixPool

6.1.6.2.26

Contains the Prose Application Code Suffix Pool.

ProseAppCodeSuffixRange

6.1.6.2.27

Contains a range of the Prose Application Code Suffixes which are consecutive.

MonitorUpdateDataForOpen

6.1.6.2.28

Represents Monitor Update Data for the Discovery Type "OPEN"

MonitorUpdateDataForRestricted

6.1.6.2.29

Represents Monitor Update Data for the Discovery Type "RESTRICTED".

DiscoveryType

6.1.6.3.3

Represents Discovery Type for ProSe Service

AuthorizationResult

6.1.6.3.4

Represents Authorization Result Type for ProSe Service

RevocationResult

6.1.6.3.5

Represents the monitoring Revocation Result for ProSe Service

Table 6.1.6.1-2 specifies data types re-used by the N5g-ddnmf service based interface protocol from other specifications, including a reference to their respective specifications and when needed, a short description of their use within the N<NF> service based interface.

Table 6.1.6.1-2: N5g-ddnmf re-used Data Types

Data type

Reference

Comments

Applicability

VarUeId

3GPP TS 29.571 [16]

String represents the SUPI or GPSI.

DateTime

3GPP TS 29.571 [16]

DataTime

PlmnId

3GPP TS 29.571 [16]

Plmn ID

Supi

3GPP TS 29.571 [16]

SUPI

Uri

3GPP TS 29.571 [16]

URI

ProblemDetails

3GPP TS 29.571 [16]

6.1.6.2 Structured data types

6.1.6.2.1 Introduction

This clause defines the structures to be used in resource representations.

6.1.6.2.2 Type: AnnounceAuthReqData

Table 6.1.6.2.2-1: Definition of type AnnounceAuthReqData

Attribute name

Data type

P

Cardinality

Description

Applicability

discType

DiscoveryType

M

1

This IE shall contain the discovery type for ProSe Service.

openDiscData

AnnounceDiscDataForOpen

C

0..1

This IE shall contain the input data of announce authorisation for open discovery when present.

If the value of discType is "OPEN", this IE shall be present.

restrictedDiscData

AnnounceDiscDataForRestricted

C

0..1

This IE shall contain the input data of announce authorisation for restricted discovery when present.

If the value of discType is "RESTRICTED", this IE shall be present.

6.1.6.2.3 Void
6.1.6.2.4 Type: AnnounceDiscDataForOpen

Table 6.1.6.2.4-1: Definition of type AnnounceDiscDataForOpen

Attribute name

Data type

P

Cardinality

Description

Applicability

proseAppId

ProseApplicationId

M

1

This IE shall contain the ProSe Application ID.

validityTimer

DateTime

M

1

This IE shall contain validity timer up to which the ProSe Application Code is going to expire.

proseAppCode

ProseApplicationCode

C

0..1

When present, this IE shall contain the ProSe Application Code.

(NOTE)

proseAppCodePrefix

ProseApplicationPrefix

C

0..1

When present, this IE shall contain the ProSe Application Code Prefix.

(NOTE)

proseAppCodeSuffixPool

ProseApplicationCodeSuffixPool

O

0..1

This IE shall contain the ProSe Application Code Suffix pool when present.

metaData

MetaData

O

0..1

This IE shall contain the metadata when present.

NOTE: Either attribute proseAppCode or attribute proseAppCodePrefix shall be present.

6.1.6.2.5 Type: AnnounceDiscDataForRestricted

Table 6.1.6.2.5-1: Definition of type AnnounceDiscDataForRestricted

Attribute name

Data type

P

Cardinality

Description

Applicability

rpauid

Rpauid

M

1

This IE shall contain the RPAUID.

appId

ApplicationId

M

1

This IE shall contain the Application ID

validityTimer

DateTime

M

1

This IE shall contain validity timer up to which the ProSe Restricted Code is going to expire.

If the value sets to a full zero (i.e., 0000-00-00T00:00:00), it indicates to removes the resources indicated by the Discovery Entry ID for the UE.

proseRestrictedCode

ProseRestrictedCode

C

0..1

This IE shall contain the ProSe Restricted Code when present.

(NOTE)

proseRestrictedPrefix

ProseRestrictedPrefix

C

0..1

This IE shall contain the ProSe Restricted Code Prefix when present.

(NOTE)

codeSuffixPool

RestrictedCodeSuffixPool

O

0..1

This IE shall contain the Restricted Code Suffix pool when present.

NOTE: Either attribute proseRestrictedCode or attribute proseRestrictedPrefix shall be present.

6.1.6.2.6 Type: AnnounceUpdateData

Table 6.1.6.2.6-1: Definition of type AnnounceUpdateData

Attribute name

Data type

P

Cardinality

Description

Applicability

discType

DiscoveryType

M

1

This IE shall contain the discovery type for ProSe Service, only value "OPEN" is allowed.

validityTime

DateTime

M

1

This IE shall contain validity timer up to which the ProSe Application Code is going to expire.

If the value sets to a full zero (i.e., 0000-00-00T00:00:00), it indicates to revoke the authorization for the announcing in the PLMN.

proseAppCode

ProseApplicationCode

C

0..1

This IE shall contain the ProSe Application Code when present.

If the ProSe Application Code is changed, this IE shall be present.

If the value of attribute is a full zero, this IE shall be absent.

6.1.6.2.7 Type: MonitorAuthReqData

Table 6.1.6.2.7-1: Definition of type MonitorAuthReqData

Attribute name

Data type

P

Cardinality

Description

Applicability

discType

DiscoveryType

M

1

This IE shall contain the discovery type for ProSe Service.

openDiscData

MonitorDiscDataForOpen

C

0..1

This IE shall contain the input data of monitor authorisation for open discovery when present.

If the value of discType is "OPEN", this IE shall be present.

restrictedDiscData

MonitorDiscDataForRestricted

C

0..1

This IE shall contain the input data of monitor authorisation for restricted discovery when present.

If the value of discType is "RESTRICTED", this IE shall be present.

6.1.6.2.8 Type: MonitorAuthRespData

Table 6.1.6.2.8-1: Definition of type MonitorAuthRespData

Attribute name

Data type

P

Cardinality

Description

Applicability

authDataOpen

MonitorAuthDataForOpen

C

0..1

This IE shall contain a list of the ProSe Application Codes when present.

If the discovery type is "OPEN", this IE shall be present.

authDataRestricted

MonitorAuthDataForRestricted

C

0..1

This IE shall contain the Prose Application Prefix when present.

If the discovery type in request is "RESTRICTED", this IE shall be present.

6.1.6.2.9 Type: MonitorDiscDataForOpen

Table 6.1.6.2.9-1: Definition of type MonitorDiscDataForOpen

Attribute name

Data type

P

Cardinality

Description

Applicability

proseAppIdNames

array(ProseApplicationIdName)

M

1..N

This IE shall contain a list of ProSe Application ID names.

6.1.6.2.10 Type: MonitorDiscDataForRestricted

Table 6.1.6.2.10-1: Definition of type MonitorDiscDataForRestricted

Attribute name

Data type

P

Cardinality

Description

Applicability

rpauid

Rpauid

M

1

This IE shall contain the RPAUID.

targetPduid

Pduid

M

1

This IE shall contain the Target PDUID.

appId

ApplicationId

M

1

This IE shall contain the Application ID

targetRpauid

Rpauid

M

1

This IE shall contain the Target RPAUID.

6.1.6.2.11 Type: MonitorAuthDataForOpen

Table 6.1.6.2.11-1: Definition of type MonitorAuthDataForOpen

Attribute name

Data type

P

Cardinality

Description

Applicability

proseAppCodes

array(ProseApplicationCode)

C

1..N

This IE shall contain a list of the ProSe Application Codes.

(NOTE)

proseAppPrefix

ProseApplicationPrefix

C

0..1

This IE shall contain the Prose Application Prefix.

(NOTE)

proseAppMasks

array(ProseApplicationMask)

M

1..N

This IE shall contain a list of the ProSe Application Masks.

ttl

integer

M

1

This IE shall contain the TTL.

If the value sets to zero, it indicates to revoke the authorization for the monitoring in the PLMN.

NOTE: Either attribute proseAppCodes or proseAppPrefix proseRestrictedPrefix shall be present if the discovery type is open.

6.1.6.2.12 Type: MonitorAuthDataForRestricted

Table 6.1.6.2.12-1: Definition of type MonitorAuthDataForRestricted

Attribute name

Data type

P

Cardinality

Description

Applicability

proseRestrictedCode

ProseRestrictedCode

M

1

This IE shall contain the ProSe Restricted Code.

validityTime

DateTime

M

1

This IE shall contain validity timer up to which the ProSe Application Code is going to expire.

6.1.6.2.13 Type: MonitorUpdateData

Table 6.1.6.2.13-1: Definition of type MonitorUpdateData

Attribute name

Data type

P

Cardinality

Description

Applicability

discType

DiscoveryType

M

1

This IE shall contain the discovery type for ProSe Service.

openUpdateData

MonitorUpdateDataForOpen

C

0..1

This IE shall contain the Monitor Update Data for open discovery when present.

If the value of discType is "OPEN", this IE shall be present.

restrictedUpdateData

MonitorUpdateDataForRestricted

C

0..1

This IE shall contain the Monitor Update Data for restricted discovery when present.

If the value of discType is "RESTRICTED", this IE shall be present.

6.1.6.2.14 Type: DiscoveryAuthReqData

Table 6.1.6.2.14-1: Definition of type DiscoveryAuthReqData

Attribute name

Data type

P

Cardinality

Description

Applicability

discType

DiscoveryType

M

1

This IE shall contain the discovery type for ProSe Service.

Only value "RESTRICTED" is allowed.

restrictedDiscData

DiscDataForRestricted

C

0..1

This IE shall contain the input data of authorisation for restricted discovery when present.

If the value of discType is "RESTRICTED", this IE shall be present.

6.1.6.2.15 Type: DiscoveryAuthRespData

Table 6.1.6.2.15-1: Definition of type DiscoveryAuthRespData

Attribute name

Data type

P

Cardinality

Description

Applicability

authDataRestricted

AuthDataForRestricted

C

0..1

This IE shall contain the authorized data for restricted discovery when present.

If the discovery type in request is "RESTRICTED", this IE shall be present.

6.1.6.2.16 Type: DiscDataForRestricted

Table 6.1.6.2.16-1: Definition of type DiscDataForRestricted

Attribute name

Data type

P

Cardinality

Description

Applicability

rpauid

Rpauid

M

1

This IE shall contain the RPAUID.

targetPduid

Pduid

M

1

This IE shall contain the Target PDUID.

appId

ApplicationId

M

1

This IE shall contain the Application ID

targetRpauid

Rpauid

M

1

This IE shall contain the Target RPAUID.

6.1.6.2.17 Type: AuthDataForRestricted

Table 6.1.6.2.17-1: Definition of type AuthDataForRestricted

Attribute name

Data type

P

Cardinality

Description

Applicability

proseQueryCodes

array(ProseQueryCode)

M

1..N

This IE shall contain a list of the authorised ProSe Restricted Code.

proseRespCode

ProseResponseCode

M

1

This IE shall contain the authorised ProSe Respond Code.

validityTime

DateTime

M

1

This IE shall contain validity timer up to which the ProSe Application Code is going to expire.

6.1.6.2.18 Type: MatchReportReqData

Table 6.1.6.2.18-1: Definition of type MatchReportReqData

Attribute name

Data type

P

Cardinality

Description

Applicability

discType

DiscoveryType

M

1

This IE shall contain the discovery type for ProSe Service.

Only value "OPEN" is allowed.

proseAppCodes

array(ProseApplicationCode)

C

1..N

This IE shall contain a list of the ProSe Application Codes when present.

If the value of DiscoveryType is "OPEN", this IE shall be present.

moniteredPlmnId

PlmnId

C

0..1

This IE shall contain the Monitored PLMN ID when present.

6.1.6.2.19 Type: MatchReportRespData

Table 6.1.6.2.19-1: Definition of type MatchReportRespData

Attribute name

Data type

P

Cardinality

Description

Applicability

proseAppIdNames

array(ProseApplicationIdName)

C

1..N

This IE shall contain a list of ProSe Application ID names when present.

If the discovery type in the request is "OPEN", this IE shall be present.

validityTime

DateTime

C

0..1

This IE shall contain validity timer up to which the ProSe Application Code is going to expire when present.

If the discovery type in the request is "OPEN", this IE shall be present.

metaData

MetaData

O

0..1

This IE shall contain the metadata when present.

metaDataIndexMasks

array(MetaDataIndexMask)

O

1..N

This IE shall contain a list of the Meta Data Index Masks when present.

6.1.6.2.20 Type: MonitorUpdateResult

Table 6.1.6.2.20-1: Definition of type MonitorUpdateResult

Attribute name

Data type

P

Cardinality

Description

Applicability

discType

DiscoveryType

M

1

This IE shall contain the discovery type for ProSe Service.

Only value "RESTRICTED" is allowed.

proseRestrictedCode

ProseRestrictedCode

M

1

This IE shall contain the ProSe Restricted Code.

appId

ApplicationId

M

1

This IE shall contain the Application ID

bannedRpauid

Rpauid

M

1

This IE shall contain the Banned RPAUID.

bannedPduid

Pduid

M

1

This IE shall contain the Banned PDUID.

revocationResult

RevocationResult

M

1

This IE shall contain the monitoring revocation results.

6.1.6.2.21 Type: MatchInformation

Table 6.1.6.2.21-1: Definition of type MatchInformation

Attribute name

Data type

P

Cardinality

Description

Applicability

discType

DiscoveryType

M

1

This IE shall contain the discovery type for ProSe Service.

openMatchInfoForOpen

MatchInfoForOpen

C

0..1

This IE shall contain the match report information for open discovery type when present.

If the value of discType is "OPEN", this IE shall be present.

restrictedMatchInfo

MatchInfoForRestricted

C

0..1

This IE shall contain the match report information for restricted discovery when present.

If the value of discType is "RESTRICTED", this IE shall be present.

6.1.6.2.22 Type: MatchInfoForOpen

Table 6.1.6.2.22-1: Definition of type MatchInfoForOpen

Attribute name

Data type

P

Cardinality

Description

Applicability

supi

Supi

M

1

This IE shall contain the SUPI of UE.

appId

array(ApplicationId)

M

1

This IE shall contain a list of the Application IDs.

6.1.6.2.23 Type: MatchInfoForRestricted

Table 6.1.6.2.23-1: Definition of type MatchInfoForRestricted

Attribute name

Data type

P

Cardinality

Description

Applicability

supi

Supi

M

1

This IE shall contain the SUPI of UE.

rpauid

Rpauid

M

1

This IE shall contain the

RPAUID.

targetRpauid

Rpauid

M

1

This IE shall contain the Target RPAUID.

proseRestrictedCode

ProseRestrictedCode

M

1

This IE shall contain the ProSe Restricted Code.

6.1.6.2.24 Type: RestrictedCodeSuffixPool

Table 6.1.6.2.24-1: Definition of type RestrictedCodeSuffixPool

Attribute name

Data type

P

Cardinality

Description

Applicability

codeSuffixList

array(RestrictedCodeSuffix)

C

1..N

This IE shall contain a list of the Restricted Code Suffixes

codeSuffixRangeList

array(RestrictedCodeSuffixRange)

C

1..N

This IE shall contain a list of ranges of the Restricted Code Suffix.

NOTE: At least one of attributes codeSuffixList and codeSuffixRangeList shall be present.

6.1.6.2.25 Type: RestrictedCodeSuffixRange

Table 6.1.6.2.25-1: Definition of type RestrictedCodeSuffixRange

Attribute name

Data type

P

Cardinality

Description

Applicability

beginningSuffix

RestrictedCodeSuffix

M

1

This IE shall contain the lowest ProSe Restricted Code Suffix in a consecutive sequence of ProSe Restricted Code suffixes.

endingSuffix

RestrictedCodeSuffix

M

1

This IE shall contain the highest ProSe Restricted Code Suffix in a consecutive sequence of ProSe Restricted Code suffixes.

6.1.6.2.26 Type: ProseApplicationCodeSuffixPool

Table 6.1.6.2.26-1: Definition of type ProseApplicationCodeSuffixPool

Attribute name

Data type

P

Cardinality

Description

Applicability

codeSuffix

ProseAppCodeSuffix

C

0..1

This IE shall contain the ProSe Application Code Suffix.

codeSuffixRange

ProseAppCodeSuffixRange

C

0..1

This IE shall contain the range of the ProSe Application Code Suffix.

NOTE: At least one of attributes codeSuffix and codeSuffixRange shall be present.

6.1.6.2.27 Type: ProseAppCodeSuffixRange

Table 6.1.6.2.27-1: Definition of type ProseAppCodeSuffixRange

Attribute name

Data type

P

Cardinality

Description

Applicability

beginningSuffix

ProseAppCodeSuffix

M

1

This IE shall contain the lowest ProSe Restricted Code Suffix in a consecutive sequence of ProSe Restricted Code suffixes.

endingSuffix

ProseAppCodeSuffix

M

1

This IE shall contain the highest ProSe Restricted Code Suffix in a consecutive sequence of ProSe Restricted Code suffixes.

6.1.6.2.28 Type: MonitorUpdateDataForOpen

Table 6.1.6.2.28-1: Definition of type MonitorUpdateDataForOpen

Attribute name

Data type

P

Cardinality

Description

Applicability

proseAppIdName

ProseApplicationIdName

M

1

This IE shall contain the ProSe Application ID Name.

ttl

integer

M

1

This IE shall contain the TTL.

If it sets to zero, it indicates to revoke the previously authorized monitoring.

6.1.6.2.29 Type: MonitorUpdateDataForRestricted

Table 6.1.6.2.29-1: Definition of type MonitorUpdateDataForRestricted

Attribute name

Data type

P

Cardinality

Description

Applicability

proseRestrictedCode

ProseRestrictedCode

M

1

This IE shall contain the ProSe Restricted Code.

appId

ApplicationId

M

1

This IE shall contain the Application ID

bannedRpauid

Rpauid

M

1

This IE shall contain the Banned RPAUID.

bannedPduid

Pduid

M

1

This IE shall contain the Banned PDUID.

monitorUpdateResultCallbackRef

Uri

O

0..1

A URI provided by 5G DDNMF to receive (implicitly subscribed) notifications on the monitoring revocation results.

6.1.6.3 Simple data types and enumerations

6.1.6.3.1 Introduction

This clause defines simple data types and enumerations that can be referenced from data structures defined in the previous clauses.

6.1.6.3.2 Simple data types

The simple data types defined in table 6.1.6.3.2-1 shall be supported.

Table 6.1.6.3.2-1: Simple data types

Type Name

Type Definition

Description

Applicability

DiscoveryEntryId

string

Discovery Entry ID

ProseApplicationId

string

ProSe Application ID, the format of ProSe Application ID is defined in 3GPP TS 23.003 [17]

ProseApplicationCode

string

ProSe Application Code, the format of ProSe Application Code is defined in 3GPP TS 23.003 [17]

Rpauid

string

RPAUID

ApplicationId

string

Application ID

ProseRestrictedCode

string

ProSe Restricted Code, the format of ProSe Restricted Code is defined in 3GPP TS 23.003 [17]

ProseRestrictedPrefix

string

ProSe Restricted Code Prefix, the format of ProSe Restricted Code Prefix is defined in 3GPP TS 23.003 [17]

MetaData

string

metadata

ProseApplicationIdName

string

ProSe Application ID name, the format of ProSe Application ID name is defined in 3GPP TS 23.003 [17]

Pduid

string

PDUID

ProseApplicationPrefix

string

Prose Application Code Prefix, the format of Prose Application Code Prefix is defined in 3GPP TS 23.003 [17]

ProseApplicationMask

string

Prose Application Mask

ProseQueryCode

string

ProSe Query Code, the format of ProSe Query Code is defined in 3GPP TS 23.003 [17]

ProseResponseCode

string

ProSe Response Code, the format of ProSe Response Code is defined in 3GPP TS 23.003 [17]

MetaDataIndexMask

string

Meta Data Index Mask

RestrictedCodeSuffix

string

ProSe Restricted Code Suffix, the format of ProSe Restricted Code Suffix is defined in 3GPP TS 23.003 [17]

ProseAppCodeSuffix

string

ProSe Application Code Suffix, the format of ProSe Restricted Code Suffix is defined in 3GPP TS 23.003 [17]

6.1.6.3.3 Enumeration: DiscoveryType

The enumeration DiscoveryType represents Discovery Type for ProSe Service. It shall comply with the provisions defined in table 6.1.6.3.3-1.

Table 6.1.6.3.3-1: Enumeration DiscoveryType

Enumeration value

Description

Applicability

"OPEN"

Discovery type is "open".

"RESTRICTED"

Discovery type is "restricted".

6.1.6.3.4 Void
6.1.6.3.5 Enumeration: RevocationResult

The enumeration RevocationResult represents the monitoring Revocation Result for ProSe Service. It shall comply with the provisions defined in table 6.1.6.3.5-1.

Table 6.1.6.3.5-1: Enumeration RevocationResult

Enumeration value

Description

Applicability

"SUCCESSFUL"

The Monitoring Revocation is successful.

"FAILED"

The Monitoring Revocation is failed.

6.1.6.4 Data types describing alternative data types or combinations of data types

None.

6.1.6.5 Binary data

None.

6.1.7 Error Handling

6.1.7.1 General

For the N5g-ddnmf_Discovery API, HTTP error responses shall be supported as specified in clause 4.8 of 3GPP TS 29.501 [6]. Protocol errors and application errors specified in table 5.2.7.2-1 of 3GPP TS 29.500 [5] shall be supported for an HTTP method if the corresponding HTTP status codes are specified as mandatory for that HTTP method in table 5.2.7.1-1 of 3GPP TS 29.500 [5].

In addition, the requirements in the following clauses are applicable for the N5g-ddnmf_Discovery API.

6.1.7.2 Protocol Errors

Protocol errors handling shall be supported as specified in clause 5.2.7 of 3GPP TS 29.500 [5].

6.1.7.3 Application Errors

The application errors defined for the N5g-ddnmf_Discovery service are listed in Table 6.1.7.3-1.

Table 6.1.7.3-1: Application errors

Application Error

HTTP status code

Description

PROSE_SERVICE_UNAUTHORIZED

403 Forbidden

It is used when the requested ProSe service is not authorized for this UE Identity.

ANNOUNCING_UNAUTHORIZED_IN_PLMN

403 Forbidden

It is used when the ProSe Application Code received is not authorized to be announced in the indicated monitored/announcing PLMN for the specified PC5 radio technology

INVALID_APPLICATION_CODE

403 Forbidden

It is used when none of the requested ProSe Application Code(s) is valid

CONTEXT_NOT_FOUND

404 Not Found

It is used when no corresponding context exists.

APPLICATION_NOT_FOUND

404 Not Found

It is used when the requested ProSe Application doesn’t exist

6.1.8 Feature negotiation

The optional features in table 6.1.8-1 are defined for the N5g-ddnmf_Discovery API. They shall be negotiated using the extensibility mechanism defined in clause 6.6 of 3GPP TS 29.500 [5].

Table 6.1.8-1: Supported Features

Feature number

Feature Name

Description

1

PatchReport

If some of the modifications included in the PATCH request are not successfully implemented, the UDM reports the result of PATCH request execution to the consumer. See clause 5.2.7.2 of 3GPP TS 29.500 [5].

6.1.9 Security

As indicated in 3GPP TS 33.501 [11] and 3GPP TS 29.500 [5], the access to the N5g-ddnmf_Discovery API may be authorized by means of the OAuth2 protocol (see IETF RFC 6749 [12]), based on local configuration, using the "Client Credentials" authorization grant, where the NRF (see 3GPP TS 29.510 [13]) plays the role of the authorization server.

If OAuth2 is used, an NF Service Consumer, prior to consuming services offered by the N5g-ddnmf_Discovery API, shall obtain a "token" from the authorization server, by invoking the Access Token Request service, as described in 3GPP TS 29.510 [13], clause 5.4.2.2.

NOTE: When multiple NRFs are deployed in a network, the NRF used as authorization server is the same NRF that the NF Service Consumer used for discovering the N5g-ddnmf_Discovery service.

The N5g-ddnmf_Discovery API defines a single scope "n5g-ddnmf_discovery" for OAuth2 authorization (as specified in 3GPP TS 33.501 [11] for the entire service, and it does not define any additional scopes at resource or operation level.

6.1.10 HTTP redirection

An HTTP request may be redirected to a different 5G DDNMF service instance, within the same 5G DDNMF or a different 5G DDNMF of an 5G DDNMF set, e.g. when an 5G DDNMF service instance is part of an 5G DDNMF (service) set or when using indirect communications (see 3GPP TS 29.500 [5]).

An SCP that reselects a different 5G DDNMF producer instance will return the NF Instance ID of the new 5G DDNMF producer instance in the 3gpp-Sbi-Producer-Id header, as specified in clause 6.10.3.4 of 3GPP TS 29.500 [5].

If an 5G DDNMF within an 5G DDNMF set redirects a service request to a different 5G DDNMF of the set using an 307 Temporary Redirect or 308 Permanent Redirect status code, the identity of the new 5G DDNMF towards which the service request is redirected shall be indicated in the 3gpp-Sbi-Target-Nf-Id header of the 307 Temporary Redirect or 308 Permanent Redirect response as specified in clause 6.10.9.1 of 3GPP TS 29.500 [5].

Annex A (normative):
OpenAPI specification