Fetch CDR By Pagination (Token authentication)

Use this API to retrieve Call Detail Records (Detailed View) for any specific day within the past 15 days from the time of the request. Results are paginated based on the provided page number and page size. For instance, if the page number is 3 and the page size is 50, the API returns records from 101 to 150.

To use this API with the help of a token, follow these steps:

  1. Generate the Token: Use the 'Generate Token' API to obtain an authentication token.
  2. Enter the Token ID: Navigate to the right section of this page, under the 'AUTHORIZATION' tab. Here, input the generated token ID.
  3. With the token entered, pass the below header and body parameters:

Header parameters

ParameterDescription
Content-Typeapplication/json

Query Params

ParameterDescriptionDefault Value
pageNoSpecify any positive integer to indicate the page number you want to retrieve. Defaults to 1 if not provided.1
pageSizeSpecify any positive integer to define the number of records per page. Defaults to 100 if not provided.100

Body Params

Pass the body params in the format:

{
"fromDate": "YYYY-MM-DD HH:MM:SS",
"toDate": "YYYY-MM-DD HH:MM:SS",
"userName": "xxxx",
"ucid": "123",
"campaignName": "xxxxxxxxx",
"monitorUCID": "17xxxxxxx9372",
"callType": "Progressive",
"status": "Answered / NotAnswered"
}

❗️

Note:

  • Mandatory Parameters are:
    • fromDate
    • toDate
    • username
  • Rate limit: Maximum of 2 requests per minute.
  • The API provides data for a single day within the last 15 days from the time of the request.

Possible responses

Success Response{
"details": [
{
"AgentDialStatus": "answered",
"AgentID": "Agent1",
"AgentName": "Agent1",
"CallAudio": "https://s3/recordings.kookoo.in/demo_user/xxxxxxxxxxx.mp3",
"CallDate": "2024-12-04",
"CallID": "10272173329746642",
"CallerConfAudioFile": "",
"CallerID": "+919xxxxxx2",
"CampaignName": "Inbound_919240231001",
"Comments": "test call~~",
"ConferenceDuration": "00:00:00",
"CustomerDialStatus": "answered",
"CustomerRingTime": "00:00:16",
"DID": "919240231001",
"DialOutName": "",
"DialStatus": "answered",
"DialedNumber": "500966",
"Disposition": "General Enquiry",
"Duration": "00:00:56",
"DynamicDID": "",
"E164": "+9199xxxxxxx2",
"EndTime": "13:02:19",
"Event": "Agent Dials",
"HandlingTime": "00:01:06",
"HangupBy": "AgentHangup",
"HoldDuration": "00:00:00",
"Location": "",
"PickupTime": "13:01:23",
"Rating": "",
"RatingComments": "",
"Skill": "",
"StartTime": "13:01:06",
"Status": "Answered",
"TalkTime": "00:00:56",
"TimeToAnswer": "00:00:17",
"TransferTo": "",
"TransferType": "",
"Type": "Manual",
"UCID": "10272173329746642",
"UUI": "",
"WrapupDuration": "00:00:10",
"WrapupEndTime": "13:02:30",
"WrapupStartTime": "13:02:20"
}
],
"totalCount": 1,
"message": "success",
"status": "success"
}
if Token Expired"{
""status"": ""false"",
""message"": ""Token Expired"",
""data"": null
}"
Passing Invalid apiKey Key / Missing apiKey key {"status": "false","message": "Missing userName or apiKey"}
Invalid apiKey Value / Missing apiKey Value{"status": "false","message": "userName or apiKey is Invalid"}
Invalid userName Key/ Missing userName key / Missing userName Value{"status": "false","message": "Missing userName or apiKey"}
Invalid userName Value{"status": "false","message": "userName or apiKey is Invalid"}
Invalid fromDate Key / Missing fromDate key / Missing fromDate Value / Invalid toDate Key / Missing toDate key / Missing toDate Value{"message": "Missing fromDate and toDate","status": "fail"}
{"message": "Missing fromDate and toDate","status": "fail"}
Invalid fromDate Value / Invalid toDate Value{"message": "Invalid fromDate format. Please pass the date in the format yyyy-MM-dd HH:mm:ss","status": "fail"}
Invalid campaignName"{""message"": ""Invalid campaignName"",
""status"": ""fail""}"
If future dates passed{"message": "fromDate and toDate should not be future dates","status": "fail"}
When passed a range of dates

Like FromDate: 2024-09-01
toDate : 2024-09-10
{"message": "fromDate and toDate should be same date","status": "fail"}
When more than 2 hits per minute are made{"message": "API rate limit has been exceeded","status": "error"}
When passed invalid or wrong JSON.{"status": "false","message": "Invalid Json Pass Valid Json"}
Language
Credentials
Bearer
URL
Click Try It! to start a request and see the response here!