Description
Universal Description, Discovery and Integration (UDDI) is a platform-independent, XML-based registry specification for listing and discovering web services. Within the 3GPP architecture, particularly from Release 15 onwards, it is adopted as a mechanism for service discovery within the framework of network exposure. The primary architectural components involved are the Network Exposure Function (NEF) in the 5G Core and the Service Capability Exposure Function (SCEF) in the 4G Core. These functions act as gateways, securely exposing network capabilities and events to authorized third-party Application Functions (AFs). UDDI provides a standardized way for these AFs to discover what services or APIs are available.
Technically, a UDDI registry contains information modeled in a specific data structure. This includes 'businessEntity' (information about the service provider, which could be the network operator), 'businessService' (a logical grouping of related web services), 'bindingTemplate' (technical details on how to invoke a service, including the network API endpoint), and 'tModel' (technical models, specifications, or classifications, such as the 3GPP-defined API specifications like 'Nnef_' interfaces). When an NEF or SCEF publishes a new network capability as a service, it creates entries in the UDDI registry with these structured details.
The discovery process works through UDDI Inquiry APIs. An application developer or an AF can query the UDDI registry using search criteria (e.g., find all services of a certain category, or from a specific provider). The registry returns the binding information, including the endpoint URL and the required tModel references. The AF can then use this information to bind to the actual service endpoint (the NEF) and start invoking the network APIs, such as requesting quality of service for a specific user or subscribing to location event notifications. This decouples the service description from its implementation, enabling dynamic and automated integration.
UDDI's role is critical in enabling a developer-friendly ecosystem. It moves beyond static API documentation to a machine-discoverable directory. This is especially important in multi-vendor and multi-operator environments, allowing for interoperability and reducing integration overhead. The registry can be hosted by the operator, a third party, or in a federated manner. Security is paramount, with access to the UDDI registry typically protected by authentication and authorization mechanisms to ensure only authorized entities can publish or discover sensitive network APIs.
Purpose & Motivation
UDDI was created to solve the fundamental problem of service discovery in a distributed, web services-based world. Before such registries, finding and integrating with a web service required manual processes, out-of-band communication, and hard-coded endpoint URLs, which were brittle and non-scalable. The original motivation for UDDI (outside 3GPP) was to create a global 'yellow pages' for web services, facilitating business-to-business (B2B) e-commerce.
3GPP adopted and specified UDDI to address the specific challenge of network API exposure and ecosystem development. With the rise of network programmability and open APIs (exemplified by initiatives like GSMA's Open Gateway), operators needed a standardized way for third-party application providers to discover available network capabilities. The limitation of simply publishing API specifications on a website is the lack of automation. UDDI provides a machine-readable, queryable interface that enables automated client configuration and dynamic binding, which is essential for scalable cloud-native architectures and DevOps practices.
Its integration into 3GPP, starting in Release 15, was motivated by the need to fully realize the service-based architecture (SBA) of 5G. In an SBA, network functions offer services to each other. Extending this principle to external applications requires a robust discovery mechanism. UDDI solves this by providing a well-understood standard for building a catalog of exposed network services (like device location, network status, QoS control), thereby lowering the barrier to entry for developers and fostering innovation in vertical applications for IoT, enterprise, and consumer services.
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (7 CRs across 2 releases). Complements the general historical overview above with the evidence-based evolution of this function.
Studied in Rel-15, normative work from Rel-16.
In Release 16, the UDDI function was enhanced to support service API discovery involving multiple CAPIF Core Functions (CCFs), enabling discovery across different CCFs within either a single provider domain or across different provider domains with a business agreement. It also introduced procedures for open service API discovery, allowing un-onboarded requestors to discover available APIs, and strengthened policy-based controls to restrict API information discovery based on configured criteria.
In Release 19, the UDDI function within CAPIF was enhanced with new procedures for Open Discovery, allowing a requestor to discover service API information before onboarding. The release also introduced the capability for service API discovery involving multiple CCFs and formally defined the use of service API category as a key element within discovery policy information for filtering. These updates provided greater flexibility and clarity for API discovery operations across interconnected domains.
Explore further
Broader topics and technologies where UDDI plays a role.
Defining Specifications
3GPP specifications that define or reference UDDI, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 23.222 vj80 | Common API Framework for 3GPP Northbound APIs | Rel-19 |