A set of Recording endpoints are introduced under /api/v2/recording/jobs to support bulk delete recording operations. Users can now perform bulk delete on recordings by specifying a filter criteria based on the Analytics conversation query format. (Refer to the documentation under /api/v2/analytics/conversations/details/query for details). Prior to this version users could only specify the action “delete” when using the API. Note: After the recording is created, it might take up to 48 hours for the recording to be included in the submitted job query
Impact :
This is a new API added and there is no change to existing APIs
Date of change:
This change is targeted to go into effect on 18 September 2019.
Impacted APIs :
The following Recording APIs are added as part of this change:
Somewhat related to this, is there a way to query for conversations that has (or had) recordings? I understand we would only need to submit a regular analytics query and recordings for all those recordings would be deleted, but if I only want to identify conversations that has/had recordings?
The way I currently identity conversations with recordings is:
POST /api/v2/analytics/conversations/details/query. For each returned conversation object, check the customer participant session and look for the key-value recording: true.
I'm not sure if this will help you or not, but in the Interactions view you can add a table column to display Recording. The column will show Yes/No if a recording exists.
In your POST /api/v2/analytics/conversations/details/query, you can include a segmentFilter on the recording property.
Something like the predicate below:
There is an update released today which should address the issue you are seeing (The root cause for the issue is that the recording start time and end time lies on the edge of the query)
If you don't mind to give it a try and please let me know if you have further questions.
It does not returnd the conversations it deletes. It returns the amount of conversations that has been deleted.
When i look how many conversations that has been on one month (january 18') through performance -> queues performance and choose the queue i want to delete from i get around 27846 conversations.
When job was done "fullfilled" it returned that 31269 recordings was deleted but i can still find recordings in that period from that queue that has not been deleted.
Would you have an example conversation Id that is supposed to be deleted and not
deleted?
From checking the backend, the deletion is still being processed by an internal service (recording service), the FULFILLED state returned by the bulk job indicates that the retention period of the recording has been updated which will then scheduled to be deleted based on the delete date on the recording metadata (but the actual deletion might still be in progress)