curl --request GET \
--url https://prod-api.ringg.ai/ca/api/v0/analytics/v4/connectivity \
--header 'X-API-KEY: <api-key>'import requests
url = "https://prod-api.ringg.ai/ca/api/v0/analytics/v4/connectivity"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://prod-api.ringg.ai/ca/api/v0/analytics/v4/connectivity', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"connectivity": {
"total": 203,
"connected": 179,
"connectivity_pct": 88.18,
"by_retry_attempt": {
"attempt_1": 150,
"attempt_2": 21,
"attempt_3": 8
}
}
}{
"message": "invalid channel(s): sms"
}{
"message": "Failed to fetch connectivity!"
}Get Connectivity Analytics
Get how many calls connected, the connectivity percentage, and which attempt each connected call got through on, filtered by date, agent, campaign or channel.
curl --request GET \
--url https://prod-api.ringg.ai/ca/api/v0/analytics/v4/connectivity \
--header 'X-API-KEY: <api-key>'import requests
url = "https://prod-api.ringg.ai/ca/api/v0/analytics/v4/connectivity"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://prod-api.ringg.ai/ca/api/v0/analytics/v4/connectivity', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"connectivity": {
"total": 203,
"connected": 179,
"connectivity_pct": 88.18,
"by_retry_attempt": {
"attempt_1": 150,
"attempt_2": 21,
"attempt_3": 8
}
}
}{
"message": "invalid channel(s): sms"
}{
"message": "Failed to fetch connectivity!"
}by_retry_attempt to judge whether more retries are worth it: attempt_2 and later are calls that connected only after a retry.
Notes
connectivity_pctruns from0to100, rounded to two decimals, unlike the0to1rates on other analytics endpoints. It is0.0when there are no calls.totalincludes every call status, including registered, ongoing and retry calls.- For calls stopped by the campaign’s end time or retry limit, read
volume.connection_ratefrom Get volume analytics.
Errors
400: a filter is invalid, such as an unknownchannel, a malformed ID, orsub_workspace_idsent from a workspace that isn’t a primary workspace.401:X-API-KEYis missing or invalid.
Authorizations
Query Parameters
Start of the reporting window. Accepts YYYY-MM-DD or ISO-8601. Omit both dates for all time.
"2026-10-01"
End of the reporting window (inclusive). Accepts YYYY-MM-DD or ISO-8601.
"2026-10-15"
Filter by one or more agent IDs (comma-separated).
"00000000-0000-4000-8000-0000000000a1"
Filter by one or more agent version IDs (comma-separated).
"00000000-0000-4000-8000-0000000000d1"
Filter by one or more campaign (bulk list) IDs (comma-separated). Callback calls inherit the campaign of their parent call.
"00000000-0000-4000-8000-0000000000c1"
true returns only voicemail calls, false excludes them. Omit to include all calls.
false
Filter by call channel (comma-separated): inbound, outbound, webcall. Unknown values return 400.
"outbound"
Include callback-feature calls (call_category = CALLBACK) in the metrics. Defaults to false.
false
Primary workspaces only: limit the combined analytics to these Ringg Spaces. Repeat the parameter for multiple IDs. The primary workspace's own ID is accepted; any other workspace sending this parameter gets 400.
["00000000-0000-4000-8000-000000000101"]
Response
Connectivity analytics retrieved successfully.
Show child attributes
Show child attributes
Was this page helpful?