Getting a 409 Conflict when trying to transfer a call to another queue via the Conversations API. Here’s the payload I’m sending:
PATCH /api/v2/conversations/calls/{conversationId}
{
"to": [
{
"id": "queue-id-here",
"type": "queue"
}
]
}
The response body says "reason": "CONFLICT" and "message": "The conversation cannot be modified in its current state."
I’ve verified the following:
- The conversation ID is valid and active.
- The user making the request has
call:transferpermission. - The target queue exists and is enabled.
- I’m using the correct OAuth token with the right scopes.
The call is currently in the “queued” state. According to the docs, transfers should be allowed from this state. I also tried transferring to an agent directly using the same payload structure but with type: "user", and that works fine.
Is there a specific condition that blocks queue-to-queue transfers? Or am I missing a header or query parameter?
Here’s the full response:
{
"message": "The conversation cannot be modified in its current state.",
"reason": "CONFLICT",
"status": 409
}
I’ve also checked the webhook events and there’s no indication of a policy blocking the transfer. The call is just sitting in the queue with no errors logged on the Genesys side.
Any ideas?