Genesys Cloud webhook payload for queue SLA breach is empty

Trying to get a Slack notification when a queue breaches SLA. Set up the webhook in the admin UI pointing to our internal endpoint. The request hits the server, logs the 200, but the body is completely empty. No JSON, just whitespace. Here’s the Python handler we’re using:

@app.route('/gen-slack', methods=['POST'])
def handle_slack():
 data = request.get_json()
 if not data:
 return 'Empty body', 400
 send_slack_msg(data['event'])
 return '', 200

The logs show data is None. We’ve tried changing the content type to application/json explicitly in the webhook config, but it’s still coming through as empty. The event type is :queue:sla-breach. Is Genesys sending the payload in a different format? Or is there a header we’re missing? We’re not seeing anything in the webhook delivery logs on the Genesys side either. It’s like the platform isn’t attaching the body at all. Anyone else hit this? We need the queue ID and timestamp to build the message.