curl --request GET \
--url 'https://prod-api.ringg.ai/ca/api/v0/calling/history?start_date=2025-09-25T00:00:00%2B05:30&end_date=2025-09-25T23:59:59%2B05:30&limit=50&offset=20&agent_id=00000000-0000-4000-8000-0000000000a1&status=completed&bulk_list_id=123e4567-e89b-12d3-a456-426614174000' \
--header 'X-API-KEY: <x-api-key>'import requests
url = "https://prod-api.ringg.ai/ca/api/v0/calling/history"
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/calling/history', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"calls": [
{
"id": "00000000-0000-4000-8000-00000000010a",
"to_number": "+919876543210",
"name": "Priya",
"status": "completed",
"sub_status": "ACCEPTED",
"transcript": "[{\"bot\": \"Hi Priya, this is Asha from Acme Lending. Is this a good time to talk about your EMI due on 5 October?\"}, {\"user\": \"Yes, go ahead.\"}]",
"audio_recording": "https://example.com/recordings/call-123.mp3",
"created_at": "2025-11-24T11:37:43.678043+00:00",
"agent": {
"id": "00000000-0000-4000-8000-000000000108",
"agent_name": "Payment reminder",
"agent_version_id": "00000000-0000-4000-8000-0000000000d1",
"orchestration_mode": "single_node",
"version": {
"version_id": "00000000-0000-4000-8000-0000000000d1",
"version_slug": "v1"
}
},
"call_duration": 7.98,
"call_attempt_time": "2025-11-24T11:37:48.549486+00:00",
"call_cost": 0.2,
"call_type": "outbound",
"inbound_from": null,
"credits_processed": true,
"from_numbers": [
"+919876500000"
],
"voicemail_detected": false
}
],
"limit": 10,
"offset": 0,
"count": 1,
"total": 1
}{
"message": "Limit cannot be greater than 200"
}{
"message": "Invalid credentials"
}{
"message": "<string>"
}{
"message": "An unexpected error occurred. Please try again later."
}Get Call History
List calls in your workspace by date range, agent, status or campaign, with transcript, recording link, duration and cost, to reconcile results or backfill.
curl --request GET \
--url 'https://prod-api.ringg.ai/ca/api/v0/calling/history?start_date=2025-09-25T00:00:00%2B05:30&end_date=2025-09-25T23:59:59%2B05:30&limit=50&offset=20&agent_id=00000000-0000-4000-8000-0000000000a1&status=completed&bulk_list_id=123e4567-e89b-12d3-a456-426614174000' \
--header 'X-API-KEY: <x-api-key>'import requests
url = "https://prod-api.ringg.ai/ca/api/v0/calling/history"
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/calling/history', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"calls": [
{
"id": "00000000-0000-4000-8000-00000000010a",
"to_number": "+919876543210",
"name": "Priya",
"status": "completed",
"sub_status": "ACCEPTED",
"transcript": "[{\"bot\": \"Hi Priya, this is Asha from Acme Lending. Is this a good time to talk about your EMI due on 5 October?\"}, {\"user\": \"Yes, go ahead.\"}]",
"audio_recording": "https://example.com/recordings/call-123.mp3",
"created_at": "2025-11-24T11:37:43.678043+00:00",
"agent": {
"id": "00000000-0000-4000-8000-000000000108",
"agent_name": "Payment reminder",
"agent_version_id": "00000000-0000-4000-8000-0000000000d1",
"orchestration_mode": "single_node",
"version": {
"version_id": "00000000-0000-4000-8000-0000000000d1",
"version_slug": "v1"
}
},
"call_duration": 7.98,
"call_attempt_time": "2025-11-24T11:37:48.549486+00:00",
"call_cost": 0.2,
"call_type": "outbound",
"inbound_from": null,
"credits_processed": true,
"from_numbers": [
"+919876500000"
],
"voicemail_detected": false
}
],
"limit": 10,
"offset": 0,
"count": 1,
"total": 1
}{
"message": "Limit cannot be greater than 200"
}{
"message": "Invalid credentials"
}{
"message": "<string>"
}{
"message": "An unexpected error occurred. Please try again later."
}Notes
start_dateandend_datetake a timezone offset, for example2026-10-01T00:00:00+05:30.bulk_list_idis the campaign’s ID.statusis one ofregistered,ongoing,retry,error,completed,failed,cancelled,forwarded. Repeatagent_id,statusorbulk_list_idto filter by several values.limitdefaults to10; more than200returns400. Page withoffset.- The list allows 10 requests per workspace per minute; more return
429. transcriptis a JSON-encoded string; parse it to get the turns.- The response’s
totalis the number of calls matching the filters, for paging. audio_recordinglinks may expire. Fetch a fresh link from Get call details, and download recordings you need to keep.- For one call with its post-call analysis, use Get call details. To get many calls as a CSV by email, use Download call history.
Authorizations
Headers
(Required) Your Ringg AI API key.
"rg_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
Query Parameters
Filter calls starting from this date (ISO 8601 format with timezone).
"2025-09-25T00:00:00+05:30"
Filter calls up to this date (ISO 8601 format with timezone).
"2025-09-25T23:59:59+05:30"
Maximum number of calls to return. More than 200 returns 400.
x <= 20050
Number of calls to skip (default: 0).
20
Filter by agent ID. Repeat the parameter to filter by several agents.
["00000000-0000-4000-8000-0000000000a1"]
Filter by call status. Repeat the parameter to filter by several.
registered, ongoing, retry, error, completed, failed, cancelled, forwarded ["completed"]
Filter by campaign (bulk_list_id). Repeat the parameter to filter by several campaigns.
["123e4567-e89b-12d3-a456-426614174000"]
Filter by agent version ID. Repeat the parameter to filter by several.
Filter by call type. callback and voicemail match calls of any direction that were callbacks or reached voicemail.
inbound, outbound, webcall, callback, voicemail "outbound"
Filter by caller number.
"+919876540001"
Filter by the number called.
"+919876543210"
Return only this call (UUID).
Field to sort by.
call_time, created_at, called_on_time, call_duration, credits_used, retry_count Sort direction.
asc, desc Was this page helpful?