Trying to understand why my EventBridge rule for Genesys Cloud conversation events is failing to match, despite the documentation suggesting a standard JSON path. I am using the genesyscloud AWS provider to deploy the infrastructure, and the rule is created successfully, but the target Lambda never receives the event. The issue seems to be strictly within the event pattern definition, as the rule status is active and no errors are logged in CloudWatch for the rule itself. I have verified that the events are being published to EventBridge by checking the console, but they are not matching my filter. Specifically, I am trying to catch conversation:created events where the mediaType is voice. My current pattern looks like this:
{
"detail-type": ["Genesys Cloud Conversation Event"],
"source": ["genesys.cloud"],
"detail": {
"event": ["conversation:created"],
"conversation": {
"mediaType": ["voice"]
}
}
}
I suspect the nesting of the conversation object in the detail field might be incorrect, or perhaps the event structure for conversation:created differs from what I am assuming. I have tried using * wildcards for the mediaType to test if the rule fires at all, but it still does not. I am not seeing any MatchingFailed events in the EventBridge console either, which is confusing because usually, unmatched events are logged if you enable that feature. Is there a specific way to inspect the raw event payload that Genesys Cloud sends to EventBridge to verify the exact JSON structure? I need to know the precise key paths for the detail object to construct a valid pattern. I am running this in the us-east-1 region, and the Genesys Cloud organization is configured to send events to this specific EventBridge bus. Any insights on how to debug the event pattern matching logic or a reference to the exact schema of the conversation:created event payload would be appreciated. I am stuck on the pattern syntax and need a concrete example of a working rule for this specific event type.