I’m trying to wire up a webhook in Genesys Cloud that triggers when a queue’s wait time SLA is breached. The goal is to push a formatted card into a Slack channel using the blocks API. The webhook fires fine-I can see the events in the event log-but the Slack integration is returning a 400 Bad Request because the payload structure is wrong. I’m using the default JSON template in the webhook configuration and trying to map the queue_name and wait_time_seconds fields. Here’s the JSON body I’m sending to the Slack chat.postMessage endpoint:
{
"channel": "#alerts",
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*SLA Breach* in {{queue_name}}. Wait time: {{wait_time_seconds}}s"
}
}
]
}
The issue seems to be that {{queue_name}} isn’t resolving to the actual queue name from the event payload. I’ve checked the event schema for purecloud:queue:sla:breach and the field exists in the data object. Am I missing a prefix like data. before the variable? Or does the webhook transformation layer not support nested object access directly in the template string? I’ve tried {{data.queue_name}} but that just sends the literal string {{data.queue_name}} to Slack. Any idea how to correctly reference the nested fields in the webhook JSON body?