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 |
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) |
|
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) |
|
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) |
|
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) |
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