Hey team. I’m trying to set up a flow where a NICE Cognigy bot passes the detected intent to a NICE CXone routing queue via a webhook. The goal is to route the conversation to the correct skill group based on what the user asked for.
I’ve configured the webhook in Cognigy to send a POST request to the CXone Conversation API. Here’s the payload I’m sending:
{
"to": "user:abc-123",
"from": "bot:my-bot",
"type": "chat",
"metadata": {
"intent": "billing_inquiry",
"priority": "high"
}
}
The webhook call returns a 200 OK response, which makes me think the request is hitting the endpoint successfully. However, the conversation doesn’t seem to be routing correctly. I checked the CXone logs and the conversation is created, but it’s going to the default queue instead of the ‘Billing’ queue. I suspect the routing profile isn’t picking up the intent from the metadata.
I’ve tried adding the intent to the skills array in the payload like this:
{
"to": "user:abc-123",
"from": "bot:my-bot",
"type": "chat",
"skills": [
{
"name": "billing_inquiry",
"level": 5
}
]
}
But now I’m getting a 400 Bad Request error with the message Invalid skills format. I’m not sure if I’m structuring the skills object correctly or if there’s a specific field I need to use for intent-based routing.
Has anyone done this before? I’ve been staring at the CXone API docs for hours and can’t find a clear example of how to pass intent from an external webhook to the routing engine. Any help would be appreciated. I’m using CXone version 2023-10 and Cognigy version 6.5.