Enabling Participant Recording for Outbound Call (through API / Flow)

Background
To comply with EU Data Protection Policy, our client needs to collect consent from customers before enabling voice recording. We have checked the "require user consent for recording" option in trunk setting, and so far it works fine for inbound call.
However, for outbound call made with dial pad, there is no call flow involved. We were planning to transfer customer to secure flow to collect consent, yet there is no option to "enable participant recording" in secure call flow.
It is not accepted by client to transfer customers to queue or call flow because the agent will be disconnected from customers, and it is not guaranteed that the agent will be connected to customers afterwards.

Question
We are attempting to set the recording state of participants through API in secure call flow. However, we encounter the following issues:

  • If we invoke PATCH /api/v2/conversations/calls/{conversationId}, the request is accepted but there is no change in recording state. There is no recording in the interaction either.
  • If we invoke PATCH /api/v2/conversations/calls/{conversationId}/participants/{participantId}, the agent recording state is updated, but an error is returned while trying to update recording state of customers. The error says that the user in the token does not match with the user in the request.

Does anyone know whether it is possible to enable participant recording using API at all?
Also appreciate if anyone can provide a solution without API, as long as the agent stays connected to customer in the consent collection process.

API request body for PATCH /api/v2/conversations/calls/{conversationId}

{
    "recordingState": "ACTIVE",
    "participants": [{
        "id": "703211ee-8013-4405-ba98-38dbabb253d4",
        "purpose": "agent",
        "calls":[{
            "id": "1c2e21f5-17ac-4460-b735-0b6aa758f261",
            "recording": true
        }]
    },{
        "id": "894a07c9-8c8d-419a-a286-bfa459674592",
        "purpose": "customer",
        "calls":[{
            "id": "b5463c75-7e5b-4dc1-812e-ac92902e63d9",
            "recording": true
        }]
    }]
}

API request for PATCH /api/v2/conversations/calls/{conversationId}/participants/{participantId}

{
    "recording": true
}

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.