The EventBridge rule isn’t triggering despite the rule matching the detail-type. The payload from Genesys Cloud sends detail-type: "genesys-cloud-event" but my rule expects "Genesys Cloud Event". Is the casing different in the actual webhook vs the docs?
Genesys sends genesys-cloud-event in lowercase. Your rule needs to match that exactly. The docs might show title case, but the actual payload is strict. Use this input transformer to normalize it if you’re stuck with the wrong pattern.
{
"detail-type": <$.detail-type>
}
Are you using the default webhook template? The casing is definitely lowercase in the payload. I just checked my Azure Function logs and it’s strictly genesys-cloud-event. If your rule is case-sensitive, that’s the blocker.
Cause: The casing mismatch is the only real issue here. Genesys always ships genesys-cloud-event in lowercase. If your EventBridge rule expects Title Case, it’s going to miss every single event. It’s a strict string match, not a fuzzy one.
Solution: You don’t need an input transformer for this. Just fix the pattern in the rule itself. Here’s the JSON pattern you should use for the detail-type field:
{
"detail-type": [
"genesys-cloud-event"
]
}
Make sure the array contains the exact lowercase string. I’ve seen this trip people up when they copy-paste from the high-level docs. The webhook payload is immutable on our side, so you have to adapt the receiver. Check the rule configuration again. It’s probably just that one character off.