We’ve got an EventBridge rule set up to catch genesys:cloud:conversation events, specifically when a new chat session starts. The rule is deployed in us-east-1 and targets a Lambda function. The problem is the Lambda never triggers. I’ve verified the Lambda works by invoking it manually with a sample payload from the docs. The issue seems to be the event pattern matching. Here is the pattern I’m using:
{
"source": ["genesys:cloud"],
"detail-type": ["Conversation Event"],
"detail": {
"type": ["chat"],
"event": ["conversation:start"]
}
}
I’ve tried broadening the pattern to just "source": ["genesys:cloud"] and "detail-type": ["Conversation Event"] without filtering on detail. Even then, nothing fires. I checked the EventBridge console and there are zero matches recorded for this rule. The webhook endpoint in Genesys Cloud is configured correctly, returning a 200 OK for the initial handshake. I can see the events flowing into EventBridge via the CloudWatch metrics for “IncomingEvents”, so the data is getting there. But the rule filter isn’t catching it.
I’m using the standard Genesys Cloud EventBridge integration. Is the detail-type actually Conversation Event or something else? The docs are a bit vague on the exact string values for detail.event. I tried "conversation:start", "start", and even "CONVERSATION_START" based on some forum posts, but no luck. I also checked the raw event in CloudWatch Logs Insights for the EventBridge delivery role, but I don’t have permission to view the actual payload content there due to our IAM policies. Any ideas on how to debug the exact structure of the detail object? Or is there a way to enable debug logging for EventBridge rule matching? We’re running on the latest Genesys Cloud release. I’ve also tried adding a "region": ["us-east-1"] filter to the pattern, but that didn’t help either. The rule status is “Active”. I’m stuck on this.