Retrieve QoS profiles
Returns all QoS Profiles that match the given criteria. NOTES:
- The access token may be either a 2-legged or 3-legged access token.
- If the access token is 3-legged, all returned QoS Profiles will be available to the subject (device) associated with the access token.
- If the access token is 2-legged and a device filter is provided, all returned QoS Profiles will be available to that device. If multiple device identifiers are provided within the device property, only QoS Profiles available to the device identifier chosen by the implementation will be returned, even if the identifiers do not match the same device. API provider does not perform any logic to validate/correlate that the indicated device identifiers match the same device. No error should be returned if the identifiers are otherwise valid to prevent API consumers correlating different identifiers with a given end user.
- This call uses the POST method instead of GET to comply with the CAMARA Commonalities guidelines for sending sensitive or complex data in API calls. Since the device field may contain personally identifiable information, it should not be sent via GET. Additionally, this call may include complex data structures. CAMARA API Design Guidelines
Body ParametersJSON
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 profile names like
QOS_E,QOS_S,QOS_M, andQOS_L - A searchable descriptive name
Returns
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 profile names like
QOS_E,QOS_S,QOS_M, andQOS_L - A searchable descriptive name
This field specifies the acceptable level of data loss during transmission. The value is an exponent of 10, so a value of 3 means that up to 10⁻³, or 0.1%, of the data packets may be lost. This setting is part of a broader system that categorizes different types of network traffic (like phone calls, video streams, or data transfers) to ensure they perform reliably on the network.
Priority levels allow efficient resource allocation and ensure optimal performance for various services in each technology, with the highest priority traffic receiving preferential treatment. The lower value the higher priority. Not all access networks use the same priority range, so this priority will be scaled to the access network’s priority range.
Retrieve QoS profiles
curl https://api.example.com/camara/qualityondemand/retrieve-qos-profiles \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $CAMARA_BEARER_TOKEN" \
-d '{
"name": "voice"
}'[
{
"name": "voice",
"description": "QoS profile for high-quality interactive voice",
"status": "ACTIVE",
"targetMinUpstreamRate": {
"value": 100,
"unit": "kbps"
},
"targetMinDownstreamRate": {
"value": 100,
"unit": "kbps"
},
"minDuration": {
"value": 1,
"unit": "Days"
},
"maxDuration": {
"value": 10,
"unit": "Days"
},
"priority": 10,
"packetDelayBudget": {
"value": 50,
"unit": "Milliseconds"
},
"jitter": {
"value": 5,
"unit": "Milliseconds"
},
"packetErrorLossRate": 3,
"l4sQueueType": "non-l4s-queue"
}
]{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Client specified an invalid argument, request body or query param."
}{
"status": 400,
"code": "OUT_OF_RANGE",
"message": "Client specified an invalid range."
}{
"status": 401,
"code": "UNAUTHENTICATED",
"message": "Request not authenticated due to missing, invalid, or expired credentials. A new authentication is required."
}{
"status": 403,
"code": "PERMISSION_DENIED",
"message": "Client does not have sufficient permissions to perform this action."
}{
"status": 404,
"code": "NOT_FOUND",
"message": "The specified resource is not found."
}{
"status": 404,
"code": "IDENTIFIER_NOT_FOUND",
"message": "Device identifier not found."
}{
"status": 422,
"code": "SERVICE_NOT_APPLICABLE",
"message": "The service is not available for the provided identifier."
}{
"status": 422,
"code": "UNSUPPORTED_IDENTIFIER",
"message": "The identifier provided is not supported."
}{
"status": 422,
"code": "UNNECESSARY_IDENTIFIER",
"message": "The device is already identified by the access token."
}{
"status": 429,
"code": "QUOTA_EXCEEDED",
"message": "Out of resource quota."
}{
"status": 429,
"code": "TOO_MANY_REQUESTS",
"message": "Rate limit reached."
}Returns Examples
[
{
"name": "voice",
"description": "QoS profile for high-quality interactive voice",
"status": "ACTIVE",
"targetMinUpstreamRate": {
"value": 100,
"unit": "kbps"
},
"targetMinDownstreamRate": {
"value": 100,
"unit": "kbps"
},
"minDuration": {
"value": 1,
"unit": "Days"
},
"maxDuration": {
"value": 10,
"unit": "Days"
},
"priority": 10,
"packetDelayBudget": {
"value": 50,
"unit": "Milliseconds"
},
"jitter": {
"value": 5,
"unit": "Milliseconds"
},
"packetErrorLossRate": 3,
"l4sQueueType": "non-l4s-queue"
}
]{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Client specified an invalid argument, request body or query param."
}{
"status": 400,
"code": "OUT_OF_RANGE",
"message": "Client specified an invalid range."
}{
"status": 401,
"code": "UNAUTHENTICATED",
"message": "Request not authenticated due to missing, invalid, or expired credentials. A new authentication is required."
}{
"status": 403,
"code": "PERMISSION_DENIED",
"message": "Client does not have sufficient permissions to perform this action."
}{
"status": 404,
"code": "NOT_FOUND",
"message": "The specified resource is not found."
}{
"status": 404,
"code": "IDENTIFIER_NOT_FOUND",
"message": "Device identifier not found."
}{
"status": 422,
"code": "SERVICE_NOT_APPLICABLE",
"message": "The service is not available for the provided identifier."
}{
"status": 422,
"code": "UNSUPPORTED_IDENTIFIER",
"message": "The identifier provided is not supported."
}{
"status": 422,
"code": "UNNECESSARY_IDENTIFIER",
"message": "The device is already identified by the access token."
}{
"status": 429,
"code": "QUOTA_EXCEEDED",
"message": "Out of resource quota."
}{
"status": 429,
"code": "TOO_MANY_REQUESTS",
"message": "Rate limit reached."
}