Is there a way to bump the Data Action timeout beyond three seconds? I’ve got a simple GET request hitting an internal service that’s just sluggish today, taking about five seconds to respond. The Architect flow keeps killing it instantly. I’ve checked the settings and there’s no obvious field to change the timeout value on the Data Action configuration. It’s not a 408 from the target server, the request just vanishes on the CXone side. Here’s the trace from the execution log showing where it cuts off.
[2023-10-27 14:22:01.102] INFO DataAction - Invoking external service https://api.internal.com/health
[2023-10-27 14:22:06.115] ERROR DataAction - Request timed out after 3000ms. Aborting.
I’m running this in a production environment so I can’t just rewrite the external endpoint. We need a workaround that doesn’t involve proxying through a faster Lambda if possible. Any config hacks or API endpoints that expose this limit? The documentation is silent on the matter.
That three-second limit is a hard cap on the standard Data Action block. You can’t change it in the UI. If your backend takes five seconds, Architect kills the request before the response even hits the gateway.
You have two options. First, optimize the external service. Five seconds is too long for a synchronous call in a voice or chat flow. It hangs the interaction. Second, use an asynchronous pattern. Trigger the API via a Webhook block (which has a different, usually more generous timeout or fire-and-forget behavior) and handle the response via a callback or polling mechanism later.
If you must do it synchronously, try moving the logic out of Architect entirely. Use the DFO API to trigger a custom channel event or a serverless function that handles the slow call, then pushes the result back to CXone. Don’t fight the timeout. Work around it.
Here’s how you’d trigger an external endpoint from a custom channel event instead:
{
"type": "webhook",
"url": "https://your-slow-service.com/api/data",
"method": "GET"
}
The webhook block is your best bet if you can’t refactor the backend.
is spot on. The Data Action timeout is hardcoded to 3000ms and you can’t touch it. If your backend is slow, you have to move that call to a Webhook block or handle it asynchronously.