Running release 23.8. Webchat embed is at 2.1.0.
Hitting a race condition in the messaging flow. The initial POST /api/v2/messaging/conversations call returns 200. Conversation state is active. Agent is assigned immediately.
The subsequent POST /api/v2/messaging/conversations/{conversationId}/messages fails with a 409 Conflict.
{
"code": "conflict",
"message": "Conversation is not in a state that allows sending messages.",
"status": 409
}
Verified via GET /api/v2/messaging/conversations/{id}. State remains active. Queue is messaging-queue-prod.
Saw a community post from mid-2022 regarding similar 409s. Mentioned a state propagation delay. Tried adding a 500ms wait in Architect. Problem persists. Occurs roughly 5% of the time.
Current workaround is a retry loop in the middleware with linear backoff. Adds latency to the agent wrap-up. Not ideal.
Anyone else seeing this on the messaging endpoints?
Logs show the request hits the edge. No timeout errors.
curl -X POST "https://{org}.mypurecloud.com/api/v2/messaging/conversations/{id}/messages" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d "{\"messageBody\": \"Test\", \"from\": {\"address\": \"user@webchat\"}}"
Returns 409.