GSMA Open Gateway - Quality on Demand API
The GSMA Open Gateway is an initiative backed by mobile operators to develop universal network APIs for developers. They provide universal access to networks for developers and promote collaboration and integration . The APIs consist of SIM Swap, Quality on Demand, Device Status, Number Verification, Edge Site Selection and Routing, Carrier Billing, and Location Verification APIs .
The APIs target a range of functionalities that are needed in a wide variety of mobile applications. They serve purposes such as establishing security or device connectivity and are important for many sectors such as banking, IoT, marketing, online services, or media. In this blog post, we will focus on the Quality on Demand (QoD) API.
The QoD API allows users to achieve a specified network quality on demand. In situations where network conditions are changing, this API can provide the user with a stable latency or high throughput. It is important to maintain specifications when the quality of the network is essential for the user's application, such as remote controlling machines (drones, autonomous cars), or streaming live media (cloud gaming on mobile, real-time streaming) .
How does the Quality on Demand API work?
The QoD API has the ability to request latency and throughput specifications from telco backend services. The quality demands are requested in the form of Quality of Session (QoS) profiles.
QoS profiles are different sets of network quality specifications that the API can request from the Telco. The Telco and the API developer must determine what the QoS profiles entail beforehand. The GSMA Open Gateway APIs only give examples of what these QoS profiles can be . As a demonstration of what different profiles there can be, we will include two examples here:
QoS example 1
Provides stable latency even if the network’s congested.
QoS example 2
Throughput is prioritized, up to a limit.
These example QoS types show what kinds of demands the API can put on the network.
User applications and QoD API requests
In information systems, a user’s application gets data from a database through an application server. The application server manages the requests coming from the application client . The programs the user is running, which are called application clients in this context, connect with the application server to exchange data. The pathways of data between them are called application dataflows. The application can request different qualities from the network depending on these different dataflows by using the API .
A diagram showing user equipment (UE), the app-flows between the application client (which is on the UE) and application server (which is on the network), and the QoD API requests triggered depending on these app-flows can be seen. The API then requests the corresponding QoS sessions from the Telco services, and the desired network quality is provided to the user. This diagram is retrieved from the CAMARA GitHub repository for the Open Gateway APIs.
Figure 1 - QoD API system diagram .
The different dataflows trigger the API to implement different QoS sessions. The API can queue these QoS sessions and end them to fit the changing network demands. The ability to queue, time, and end sessions depending on changing network demands and conditions is an important functionality of the API.
The API can also return notifications about the QoS sessions for the application server. These notifications can be sent to a callback URL and viewed there. These notifications deliver information about session-related events.
As summary, the QoD API can be used for the following purposes:
Request specific network quality sessions from the network operator.
Time, queue and remove sessions.
Receive notifications about session events to a callback URL.
What are some uses of the Quality on Demand API?
The CAMARA Open Gateway APIs provide developers with a framework that can allow easy access to operators' networks and help them with building wide-reaching applications. As the APIs’ objective is to encourage cooperation between developers and operators, it is also mandatory that they work together to create an application. By creating a framework with which developers can have easy access to networks, operators can pave the way to a diverse pool of future 5G technologies. As such, major telecom companies are starting to offer open API tools, such as Orange S.A. .
The QoD API is used in situations where a user application depends on having a good connection to a mobile network — the definition of what a good connection entails depends on the situation: an application might require a stable latency or throughput, and another might need it to be maximized up to a certain limit. In such cases, the QoD API will offer different solutions using the QoS profiles mentioned in the previous section, and adapt the network according to demand.
Some applications that can benefit from the QoD API are as follows:
real-time media and entertainment streaming
remote control of vehicles
factory machine and robotic arm controls
Real-time streaming of media for entertainment is an area that requires a good connection. There is popular demand for streaming, from events to video games. Such applications require a lot of data to be transmitted in short periods of time, for the user who uses the network to view the stream and for the user who is broadcasting the stream.
This is also true for players of online games, as they depend on a good network connection to have a satisfactory gaming experience. Network quality is even more critical for cloud gaming, which is an emerging technology that lets users play games on a remote device, removing the need to own expensive hardware. Leading products in this field state low latency as a requirement , and the stability of the connection is important .
A developer looking to create an application that enhances the mobile gaming experience fits right into this field, specifically cloud gaming. When we consider commercial gaming devices on the market today, we see that the users need access to a gaming device to play the most established video games. The best video games developed with cutting-edge technologies require the best devices. Those devices are hard to carry, expensive; they can’t be taken anywhere and require a lot of purchasing power. Thus, they create a financial barrier in front of people who want to enjoy the latest games. Whereas in cloud gaming, these games can be “remote-played” on a mobile phone.
A developer can create an application that tries to improve and stabilize the connectivity of mobile phones in order to enhance the live-streaming, gaming experience. The app can utilize the QoD API, to request a stable latency from the network operator, when the user launches a gaming app on their phone. The app datastream instigated by the gaming app, activates the API, which in turn ensures that the latency won’t jitter during the gaming time, all functions that are part of the QoD API: queueing quality sessions based on the app-flow from the user.
Remote control of vehicles
Autonomous driving cars, IoT in vehicles, multiple drone control are some of the important emerging applications that require mobile network solutions.
Drones are expected to gain increasingly more prominence in both public and commercial sectors . One of the most important applications of drones are their use in search and rescue missions , and their usefulness has been demonstrated both by studies  and in practice. Drones have been used in search and rescue missions as early as Hurricane Katrina in 2005, when two drones searched for survivors in an area that was blocked by floodwater, and could not be accessed by the rescue personnel .
Network connectivity plays an important role in drone search and rescue missions. A study by Waharte and Trigoni discusses drones that fly over a search area and transmit video footage as information for the rescue teams, and state that network connectivity is an important parameter to consider. The study states that “a trade needs to be made between the reward of establishing connection (exchanging information) and cost of connection (necessary to travel to a given rendezvous point) .
This is a prime use case for the QoD API, as it has the ability to adapt to changing network demands and ensure the required connection.
While the drone is being controlled by the search and rescue teams, they will need the drone to be responsive. They want it to be controlled smoothly and arrive at its destination. In this case, a QoS profile focusing on low, stable latency can be initiated by the QoD API.
When the drone arrives at the disaster location and starts streaming footage of the area back to the rescue teams, it will be transmitting high-quality video over the network, which requires high bandwidth. In this case, the QoD API will need to queue in a high throughput QoS profile.
Drones are also useful to increase connectivity in disaster affected areas. Another important use of drones are as aerial remote radio heads (RRHs) , that can fly to areas where coverage is poor and improve it by extending the coverage of mobile base stations. It can be useful in situations like when sports stadiums or traffic jams gather too many users in close proximity or deliver service to areas where telecommunications infrastructures are destroyed by earthquakes or hurricanes .
QoD services can be useful for this context as well. Special QoS profiles may be created to ensure network demands which arise in disaster situations can be met, and this service can make it easier for disaster victims to access vital information through the internet.
Factory machine and robotic arm controls
A developer looking to target a factory workplace with Open API solutions can design an application that connects both to the machines and manages network capabilities accordingly. The QoD API can be used to demand specific network quality according to the machine being controlled, which will be inferred from the app-flow. As different machines have different functionalities, they have different network demands, which can be easier to program with the help of the Open API framework.
 “GSMA Open Gateway,” Future Networks, Jun. 30, 2023. https://www.gsma.com/futurenetworks/gsma-open-gateway/
 “GSMA Open Gateway API Descriptions,” Future Networks, Jun. 30, 2023. https://www.gsma.com/futurenetworks/gsma-open-gateway-api-descriptions/
 CAMARA Project, “QoS Profiles Mapping Table.” https://github.com/camaraproject/QualityOnDemand/blob/main/documentation/API_documentation/QoSProfile_Mapping_Table.md (accessed Jun. 13, 2023).
 S. Zhang and M. Wang, “Server Classifications,” in Encyclopedia of Information Systems, H. Bidgoli, Ed. 2002, pp. 60–61. doi: 10.1016/B0-12-227240-4/00157-X.
 CAMARA Project, “Quality on Demand API - Overview.” https://github.com/camaraproject/QualityOnDemand/blob/main/documentation/API_documentation/QoSProfile_Mapping_Table.md (accessed Jun. 13, 2023).
 Orange, “CAMARA,” Orange Developer. https://developer.orange.com/apis/camara (accessed Jun. 13, 2023).
 “System Requirements for GeForce NOW Cloud Gaming,” System Requirements for Cloud Gaming | NVIDIA GeForce NOW. https://www.nvidia.com/en-us/geforce-now/system-reqs/
 R. Henderson, “What is PlayStation Now and how does it work? PS Now explained,” What is PlayStation Now and how does it work? PS Now explained, Jan. 08, 2014. https://www.pocket-lint.com/playstation-now-explained-price-devices-how-to-get-it/
 U.S. Department of Transportation John A. Volpe National Transportation Systems Center, “Unmanned Aircraft Systems (UAS) Service Demand 2015-2035: Literature Review and Projections of Future Usage, Version 0.1,” DOT-VNTSC-DoD-13-01, Sep. 2013.
 P. Doherty and P. Rudol, “A UAV Search and Rescue Scenario with Human Body Detection and Geolocalization,” AI 2007: Advances in Artificial Intelligence, pp. 1–13, doi: 10.1007/978-3-540-76928-6_1.
 “Small, Unmanned Aircraft Search for Survivors in Katrina Wreckage,” Small, Unmanned Aircraft Search for Survivors in Katrina Wreckage | NSF - National Science Foundation. https://www.nsf.gov/news/news_summ.jsp?cntn_id=104453
 S. Waharte and N. Trigoni, "Supporting Search and Rescue Operations with UAVs," 2010 International Conference on Emerging Security Technologies, Canterbury, UK, 2010, pp. 142-147, doi: 10.1109/EST.2010.31.
 Y. Zeng, R. Zhang and T. J. Lim, "Wireless communications with unmanned aerial vehicles: opportunities and challenges," in IEEE Communications Magazine, vol. 54, no. 5, pp. 36-42, May 2016, doi: 10.1109/MCOM.2016.7470933.
 W. Shi et al., "Multiple Drone-Cell Deployment Analyses and Optimization in Drone Assisted Radio Access Networks," in IEEE Access, vol. 6, pp. 12518-12529, 2018, doi: 10.1109/ACCESS.2018.2803788.