Hey folks,
I’m trying to set up a webhook that triggers a Slack notification whenever our queue SLA drops below 80%. I’ve got the webhook endpoint configured in Genesys Cloud, but the delivery is failing with a 400 Bad Request error.
Here is the JSON payload I’m sending to the Slack incoming webhook URL:
{
"channel": "#ops-alerts",
"username": "Genesys Bot",
"text": "SLA Breach: Queue {{queue.name}} is at {{metric.value}}%"
}
The issue seems to be with the variable substitution. When I test the webhook using the “Test” button in the UI, it sends the literal string {{queue.name}} instead of the actual queue name. Slack rejects the payload because the text field is empty or malformed in their validation logic if the variables don’t resolve.
Is there a specific syntax I need to use for the webhook payload in Genesys Cloud to ensure the variables are resolved before the HTTP POST happens? I’ve tried using ${queue.name} as well, but that just sends the dollar sign literally.
Also, I’m not sure if the EventBridge event structure maps directly to the JSON body or if I need to use a transformation step first. Any pointers would be great.