409 Conflict when stopping recording via API during active call

Trying to stop a Genesys Cloud call recording programmatically using PUT /api/v2/conversations/calls/{conversationId}/recordingstate. The request fails with a 409 Conflict immediately after a successful start. Here’s the response:

{
 "message": "Recording is currently in state 'STARTING' and cannot be stopped.",
 "code": "Conflict"
}

Polling the status doesn’t help because the transition to RECORDING is inconsistent. Is there a specific header or timing constraint I’m missing to ensure the state settles before the stop request?

1 Like