Here’s the rule JSON I’m pushing via the AWS console. It’s supposed to catch any conversation update in my Genesys org, but the test event tool says it matches while live traffic ignores it completely. I’ve checked the subscription ARN and it’s active. The event bus is default. No errors in CloudWatch, just silence. I’m losing my mind over this. Why won’t it trigger?
{
“Source”: [“com.genesyscloud.events”],
“Detail-Type”: [“Conversation Event”],
“Detail”: {
“eventType”: [“conversation:details”]
}
}
I’ve tried adding the organizationId in the detail block, but that broke the test match. I’ve also tried conversation:update as the event type, same result. The Genesys side shows the event bus integration is healthy and sending events. I can see the raw events in the EventBridge console history for a few seconds, then they vanish. Wait, no, they don’t vanish, they just don’t match the rule. I’m using the standard AWS SDK for the initial setup, but the rule definition is manual JSON. I’ve verified the IAM role has events:PutEvents and logs:CreateLogGroup. The target is a Lambda function that just logs the event. The Lambda is dead. No invocations. I’m wondering if the Detail-Type field is case sensitive or if there’s a hidden attribute I’m missing. The Genesys docs are vague on the exact payload structure for EventBridge. I’ve dumped the raw event to a dead-letter queue S3 bucket and the JSON looks standard. No extra nesting. Just source, detail-type, detail, time, id, resources. I’m staring at this for hours. It’s got to be a syntax error in the pattern. Or maybe the event type string is wrong. I’ve tried conversation:details and conversation.update. Nothing. I’m going to try removing the Detail block entirely and just matching on Source and Detail-Type. If that works, I know the issue is in the detail matching. Fingers crossed. I’ll update if it works. Right now, I’m just guessing. The docs say conversation:details is the right string. But maybe it’s conversation:detail. Or conversation.details. I’m out of ideas. Help.