Review if apiName must be unique across all apis published
Proposers
- Jorge Moratinos Salcines (Telefónica Innovación Digital)
Description
We need to be sure if apiName is unique or not. Review TS29222 and TS29122 - 5.2.4
Get a final decisión about uniqueness of apiName
The review of the provided sources indicates that, while every published API must have a unique identity, the primary architectural mechanism for guaranteeing absolute uniqueness across the system is the identifier assigned by the CCF, known as the apiId, rather than the apiName itself.
Here is a breakdown of the requirements and roles of these identifiers:
The Role of apiName
The
apiName serves as the functional name and a key descriptive component of the API:
• The apiName is a mandatory (M) attribute within the ServiceAPIDescription data type.
• It is set as the {apiName} part of the URI structure as defined in subclause 4.4 of 3GPP TS 29.501 (Reference: 3GPP TS 29.222 version 16.5.0 Release 16, 7.5 URI structure (Page 44), 3GPP TS 23.222 V19.5.0 (2025-03) (Page 46), 3GPP TS 29.122 V19.2.0 (2025-03) (Page 68), 3GPP TS 29.222 version 16.5.0 Release 1.
• The apiName is included in the service API information submitted by the APF to the CCF during the publishing request.
-During the discovery process, the Invoker could request service API discovery for interested service APIs with service API information including e.g., API name, API provider name, API category.
• In the context of Multi-access Edge Computing (MEC) adopting CAPIF, the apiName should be consistent with the appName in the Application Descriptor (AppD), if one is available.
The Role of apiId
• The apiId is the API identifier assigned by the CCF to the published service API (3GPP TS 29.222 version 16.5.0 Release 16).
• When the API Publishing Function sends the HTTP POST request to publish the service API, the apiId shall not be present in that request, as it is generated by the CCF.
• Conversely, the apiId shall be present in the HTTP POST response sent back from the CCF to the APF upon successful publication.
• The apiId is also included in the response when an API invoker successfully discovers API information using the discovery API.
Conclusions
Although the apiName is mandatory and critical for identifying the API contextually and within its URI structure, absolute and definitive uniqueness across all published APIs within the CAPIF framework is handled by the system-assigned apiId, which is generated and stored by the CCF (API registry) upon successful publication.
So, the joint of apiName/apiId is also unique.