MG
Documentation Hub
Base URL
Authentication
Glossary
APIs
Quality on Demand
Create a session
Get info on a session
Delete a session
Connectivity
SMS Notifications
Location
Network Slicing
Products
IoT Developer Kit
IoT SIM Starter Kit
Documentation
/
Quality on Demand
/
Create a QoD Session
Create a QoD Session
Last updated on 11/17/2023
Version 1.1.2
Requesting Quality on Demand for your app begins by creating a Quality of Service (QoS) session. You will determine when to create a QoS session based on your specific use case. A common pattern is to monitor key performance metrics for the network, such as throughput and latency. If any metric falls outside the predefined acceptable criteria, send a request to create a QoS session for the relevant user equipment (UE).
To get started you need:
1
An active DevEdge account
Create a DevEdge account if you haven’t already.
2
An active QoD API subscription
Subscribe here if you don’t have an active subscription.
3
Authenticate an API request from your own code base
Start here if you haven’t already.
4
A client to send requests to the QoD API
Sending a POST Request to /sessions
To create a QoS session, your application must send a POST request to the method.
You may choose to include additional information, such as the session duration, notification URL, and more.
See the API reference for a complete list of required and optional parameters, response parameters, sample requests and possible errors.
If your request is successful, you will receive a 200 response with the session ID and a new QoS session will be created.
The session will remain active until the end of the session duration specified, 24 hours after creation if no duration is specified, or when ended manually using the method.
View schemas in the API Reference
POST
../sessions
JSON
Python
Ruby
1
2
3
4
5
6
7
8
9
10
11
curl --request POST \
--url https://{{base-url}}/sessions \
--header 'Authorization: Bearer ' \
--header 'X-Authorization: ' \
--header 'content-type: application/json' \
--header 'x-transaction-id: SOME_STRING_VALUE' \
--data '{"duration":86400,"ueId":{"externalId":"123456789@domain.com","msisdn":"123456789","ipv4addr":"192.168.0.1/24","ipv6addr":"2001:db8:85a3:8d3:1319:8a2e:370:7344"},"asId":{"ipv4addr":"192.168.0.1/24","ipv6addr":"2001:db8:85a3:8d3:1319:8a2e:370:7344"},"uePorts":{"ranges":[{"from":5010,"to":5020}],"ports":[5060,5070]},"asPorts":{"ranges":[{"from":5010,"to":5020}],"ports":[5060,5070]},"qos":"QOS_E","notificationUrl":"https://application-server.com","notificationAuthToken":"c8974e592c2fa383d4a3960714"}'
Response
JSON
Python
Ruby
1
2
3
4
5
.
.
.
.
.
{
"reasonCode": "ERR-1091",
"systemMessage": "UNAUTHORIZED",
"userMessage": "Authorization failed: ..."
}
Did you find what you were looking for?
Complete this short survey to help us improve this documentation. Your feedback is appreciated.
Not at all
Somewhat
Yes