Search Captured Conversations
Use the search conversations request to search your captured conversations, you can use the request body to create complex filters for your search, the information provided in the response for each conversation is not the complete data set for the conversation - use other requests for more specific information and data retrieval, for example:
Use the get transcript for conversation request to get the transcript for a specific conversation.
Use the get a media link request to download the associated audio and screen recording for a conversation.
Endpoint
Method: POST
URL: /search/v2
Request Parameters
Parameter Name | Data Type | Description | Required/Optional |
---|---|---|---|
| Number | Specify how many conversations per page you would like to receive in the response. | Required |
| Array | Filter your search, the criteria to determine which conversations should be considered a match and be displayed in the response. See Filters for a detailed explanation on how filters work - how to use them in API requests and therefore how to understand them in API responses. You can use | Optional |
| String | The token for which page of the response to see, if you want the first page of a search use | Optional |
For an example request see Sample Request.
Response and Error Code
Response Code | Condition |
---|---|
200 | OK |
Response Parameters
For an example response see Sample Response.
Parameter Name | Data Type | Description |
---|---|---|
| Array | The list of conversations in this page of the repsonse, each conversation will have sub-parameters, see Conversation Sub-parameters for further details. |
| String | The token for the next page of conversations, use this token as the |
| Number | How many conversations match the request in total. This does not reflect the amount of to conversations in the page, use |
Parameter Name | Data Type | Description |
---|---|---|
| String | The unique ID of the conversation, used to track the conversation throughout the system and tie call data together (audio, metadata, screen recording). |
| String | The ID of the tenant that the conversation belongs to. |
| Array | Information about the recorded agent, see agent Sub-parameters for further details. |
| Array | Information about the captured conversation's properties, see callProperties Sub-parameters for further details. |
| Array | Information on the verification status of the call, ensures media data has not been tampered with in any way - useful for legal and compliance data verification. |
| Array | Information on the policies in place on the conversation, consisting of the Policy ID and the action type for the policy (if applicable). |
| Array | Information on the attachments associated with the call in the form of a list of boolean parameters, potential attachments at the time of writing include |
| String | The ID for linked conversation that the conversation is part of (if applicable). |
agent
Sub-parametersParameter Name | Data Type | Description |
---|---|---|
| String | The email address of the recorded agent. |
| Number | The extension of the recorded agent. |
| String | The first name of the recorded agent. |
| String | The last name of the recorded agent. |
| String | The manager of the recorded agent. |
| String | The user ID of the recorded agent. |
| Number | The number assigned to the recorded agent, note that this it not their phone number. |
callProperties
Sub-parametersParameter Name | Date Type | Description |
---|---|---|
| Date-Time | The date and time that the conversation started, in the format |
| Date-Time | The date and time that the conversation ended, in the format |
| Array | A list of details for the other parties in the captured conversation. |
| Number | The phone number of the remote party of the conversation (if applicable). |
| String | Call audio status - either |
| String | The direction of the call, either |
| Boolean | The status of the license for the conversation, either |
| Boolean | If the conversation is licensed or not, either |
| String | External Call ID for the associated recording (set by the telephony hardware/integration). |
| Number | How long the call was on hold for (in seconds). |
| Number | How long the call rang for (in seconds). |
| String | Telephony integration associated with the recording. |
| String | The local name of the agent in the conversation, usually their full name or alias. |
| String | Call routing information (if available) such as transfers, original dialled number, queue, etc. |
| String | Physical network information for the call at SIP level. |
| String | Media source format – either |
| String | Unique ID for the recorded device. |
| String | Details on the screen recording status associated with the conversation, either |
| Array | Additional call properties. |
otherCallProperties
Sub-parametersNote
Each integration and call scenario will provide different call metadata, therefore not all parameters will have values.
Parameter Name | Data Type | Description |
---|---|---|
| String | The name of the answering call participant. |
| Number | The number of the answering call participant. |
| String | The ID for the conference call. |
| Boolean | Not in use. |
| Number | The phone number or extension called. |
| Number | The phone number of the external caller (if applicable). |
| String | Additional information related to the recording (if available), such as |
| String | The ID of the call at the Collector level. |
| String | Not in use. |
| String | Not in use. |
| String | Not in use. |
| Boolean | If push to talk was used for the conversation. |
| Boolean | If record on demand feature was used for the conversation (retain, discard, and crop live calls). |
| String | The state of the call, either |
| String | Not in use. |
| Date-Time | The date and time that the Collector ended the capture of the conversation. |
| Date-Time | The date and time that the Collector began to capture the conversation. |
| String | The ID of the Collector used to capture the call. |
| String | The ID of the deduplication for the conversation. |
| Array | A list of the IDs of discarded call streams associated with the conversation. |
| String | The ID used to link call segments together. |
| String | The ID of the PBX integration |
| String | The ID of the PBX line. |
| String | The ID of the queue the call was directed through. |
| String | The name associated with the call redirection. |
| Number | The number/extension associated with the call redirection. |
| String | The ID used to link call segments together. |
| Number | Which segment number this call segment is, starts at |
| Array | Call suppression details. |
| String | Indicates if call capture was unexpectedly terminated and why, possible values include |
| String | The name of the trunk (if applicable). |
Sample Request
{ "pageSize": 1, "groupFilter": { "leftFilter": { "fieldName": "callProperties.startDate", "operator": "CONVERSATION_FILTER_OPERATOR_GREATER_THAN_OR_EQUAL", "timestampValue": "2024-08-01T18:30:00.000Z" }, "operator": "CONVERSATION_LOGICAL_OPERATOR_AND", "rightFilter": { "fieldName": "callProperties.endDate", "operator": "CONVERSATION_FILTER_OPERATOR_LESS_THAN_OR_EQUAL", "timestampValue": "2024-08-07T18:29:59.999Z" } }, "pageToken": "eyJwYWdlX3NpemUiOjIsImNoZWNrX3N1bSI6WzE5MSwxMTQsNjUsMjUxLDE4NCwxOSwxMywxNjMsMjE0LDUyLDkzLDExNiw2NSwyMDEsMTU2LDExMF0sInRlbmFudF9pZCI6IjY2ZGQ4NDE4LWIxZDEtNGQ0Ny05MjE4LWMwZTI5YmYxMzE3MCIsImNvbnZlcnNhdGlvbl9pZCI6IjdlNGRlNmE0LTBhZjgtNDkzYi05NmM0LWUxYTVkMTQ3OTI2YyIsInRvdGFsX2NvdW50IjozNSwiZmlsdGVyX3ZhbHVlcyI6eyI0IjoiMjAyNC0wOC0wNlQxNDoyMToxMC42WiJ9fQ==" }
Sample Response
{ "callRecords": [ { "conversationId": "7e4de6a4-0af8-493b-96c4-e1a5d147926c", "tenantId": "66dd8418-b1d1-4d47-9218-c0e29bf13170", "agent": { "email": "john.doe@uniphore.com", "extension": "4100", "firstName": "John", "lastName": "Doe", "manager": "Tom Smith", "id": "auth0|972ujf53h235bn09835d984h", "number": "4000" }, "callProperties": { "startDate": "2024-08-06T14:21:10.600Z", "endDate": "2024-08-06T14:21:10.670Z", "otherParties": [ { "name": "07552786033" } ], "remoteNumber": "07552786033", "callAudio": "Composing", "callDirection": "CONVERSATION_DIRECTION_INBOUND", "licenseStatus": "true", "licensed": "true", "externalCallId": "00001002941722953534_1722954070596", "holdTime": "0", "ringTime": "0", "integration": "3342337", "localName": "John Doe", "routingInformation": "Skill 3", "sipDetails": "2187bd442b905507015d9030619aa867", "sourceFormat": "Default", "deviceId": "b2b0711d-2d7c-52e7-9eeb-2b833da710da", "screenRecordingStatus": "NOT_AVAILABLE", "otherCallProperties": { "TerminationStatus": "NotTerminated", "CallLegacyId": "0", "CallRecordOnDemand": "false", "CallParentCallId": "0", "PBXLineID": "00000000-0000-0000-0000-000000000000", "CallerNumber": "07552786033", "QueueID": "3100", "CalledNumber": "3000", "CallState": "Established", "Answering_Number": "4100", "Trunk": "10", "Answering_Name": "Agent Phone 4100", "CallFlags": "3", "CollectorCaptureStartDateTime": "0001-01-01T00:00:00+00:00", "ParentCallId": "00000000-0000-0000-0000-000000000000", "RedirectionName": "VDN 3000", "CallConferenceID": "00000000-0000-0000-0000-000000000000", "DeduplicationId": "2a663acc-b694-4a87-9016-36572adc2adb", "DiscardedCallStreamIds": "[]", "CollectorCaptureEndDateTime": "0001-01-01T00:00:00+00:00", "CallID": "59ed8b30-9ad3-4a90-83ab-99c00a56f77f", "PBXIntegrationID": "00000000-0000-0000-0000-000000000000", "CallInitiallyRecording": "false", "Suppressions": "[]", "CallPushToTalk": "false", "CallCTI": "false", "CollectorID": "a497e2fc-27f2-4964-9be8-3c50a70882a0", "SegmentIndex": "0", "RedirectionNumber": "3000", "CallToggleTime": "0001-01-01T00:00:00+00:00" } }, "callVerification": { "status": "[]" }, "attachment": { "transcript": true }, "linkedConversationId": "ca73aefb-389b-441d-8936-50bf45d7b88a" } ], "nextPageToken": "eyJwYWdlX3NpemUiOjIsImNoZWNrX3N1bSI6WzE5MSwxMTQsNjUsMjUxLDE4NCwxOSwxMywxNjMsMjE0LDUyLDkzLDExNiw2NSwyMDEsMTU2LDExMF0sInRlbmFudF9pZCI6IjY2ZGQ4NDE4LWIxZDEtNGQ0Ny05MjE4LWMwZTI5YmYxMzE3MCIsImNvbnZlcnNhdGlvbl9pZCI6IjFjZWU1YTQ2LTFiNGUtNGU4OS05ZjYxLTc3ZjdmNWUwMjExYyIsInRvdGFsX2NvdW50IjozNSwiZmlsdGVyX3ZhbHVlcyI6eyI0IjoiMjAyNC0wOC0wNlQxMTo0MDo0MS4yOTFaIn19", "totalCount": "35" }
Search for a Specific Conversation
To get details on a specific conversation, use the groupFilter
array to specify which conversation to show in the results, for example the below would only get the details for the conversation with the conversationId
e52b7f17-38de-411d-960f-d7f22362c924
.
{ "pageSize": 100, "groupFilter": { "leftFilter": { "fieldName": "conversationId", "operator": "CONVERSATION_FILTER_OPERATOR_EQUAL", "stringValue": "e52b7f17-38de-411d-960f-d7f22362c924" } }, "pageToken": null }