API Reference

Create QoD session v0.10

Create QoS Session to manage latency/throughput priorities

If the qosStatus in the API response is "AVAILABLE" and a notification callback is provided the client will receive in addition to the response a QOS_STATUS_CHANGED event notification with qosStatus as AVAILABLE.

If the qosStatus in the API response is REQUESTED, the client will receive either

  • a QOS_STATUS_CHANGED event notification with qosStatus as AVAILABLE after the network notifies that it has created the requested session, or
  • a QOS_STATUS_CHANGED event notification with qosStatus as UNAVAILABLE and statusInfo as NETWORK_TERMINATED after the network notifies that it has failed to provide the requested session.

A QOS_STATUS_CHANGED event notification with qosStatus as UNAVAILABLE will also be send if the network terminates the session before the requested duration expired

NOTE: in case of a QOS_STATUS_CHANGED event with qosStatus as UNAVAILABLE and statusInfo as NETWORK_TERMINATED the resources of the QoS session are not directly released, but will get deleted automatically at earliest 360 seconds after the event. This behavior allows clients which are not receiving notification events but are polling to get the session information with the qosStatus UNAVAILABLE (the statusInfo parameter is not included in the current version but will be adding to SessionInfo in an upcoming release). Before a client can attempt to create a new QoD session for the same device and flow period they must release the session resources with an explicit delete operation if not yet automatically deleted.

Check the Authorization guide on how to get an OAuth2 token, with the following scope:

dpv:RequestedServiceProvision#qod

Create an app on our Sandbox to get credentials and retrieve tokens so you can perform API calls to our operators' production environments, or use the following convenience token to test in mock mode:

mock_sandbox_access_token

You can explore our QoD sample code for additional guidance on using this API.

Body Params

Parameters to create a new session

device
object
required

End-user equipment able to connect to a mobile network. Examples of devices include smartphones or IoT sensors/actuators.

The developer can choose to provide the below specified device identifiers:

  • ipv4Address
  • ipv6Address
  • phoneNumber
  • networkAccessIdentifier

NOTE: the MNO might support only a subset of these options. The API invoker can provide multiple identifiers to be compatible across different MNOs. In this case the identifiers MUST belong to the same device

applicationServer
object
required

A server hosting backend applications to deliver some business logic to clients.

The developer can choose to provide the below specified device identifiers:

  • ipv4Address
  • ipv6Address
devicePorts
object

The ports used locally by the device for flows to which the requested QoS profile should apply. If omitted, then the qosProfile will apply to all flows between the device and the specified application server address and ports

applicationServerPorts
object

A list of single ports or port ranges on the application server

string
required
length between 3 and 256

A unique name for identifying a specific QoS profile. This may follow different formats depending on the service providers implementation. Some options addresses:

  • A UUID style string
  • Support for predefined profiles QOS_S, QOS_M, QOS_L, and QOS_E
  • A searchable descriptive name
webhook
object
int32
1 to 86400
Defaults to 86400

Session duration in seconds. Maximal value of 24 hours is used if not set. After session is expired the, client will receive a QOS_STATUS_CHANGED event with

  • qosStatus as UNAVAILABLE, and,
  • statusInfo as DURATION_EXPIRED. See notification callback.
Responses

Callback
Language
Credentials
OAuth2
URL
Click Try It! to start a request and see the response here! Or choose an example:
application/json