Can anyone clarify why my AWS EventBridge rule is failing to match Genesys Cloud events despite the ARN being correct? I am configuring a real-time integration to capture routing.queue.member state changes. The integration setup in the Genesys Cloud UI shows a healthy status, and I have verified the destination ARN. However, the events are not appearing in my target Lambda function. I suspect the issue lies in the event pattern matching logic within EventBridge rather than the delivery mechanism itself.
I have inspected the raw payload arriving at my intermediate SQS queue (used as a dead letter for debugging). The source field is com.genesyscloud and the detail-type is Genesys Cloud Event. Here is a snippet of the detail object I am seeing:
{
"organizationId": "abc-123",
"eventType": "routing.queue.member",
"data": {
"memberId": "xyz-789",
"state": "available"
}
}
My EventBridge rule pattern looks like this. It seems syntactically correct based on the AWS documentation:
{
"source": ["com.genesyscloud"],
"detail-type": ["Genesys Cloud Event"],
"detail": {
"eventType": ["routing.queue.member"]
}
}
I have tried removing the detail-type filter, but the rule still matches nothing. I have also checked the CloudWatch logs for the Lambda function, and there are no invocations. The integration health check in Genesys passes, so the push is happening. Is there a known discrepancy in how Genesys formats the detail envelope for EventBridge versus standard SNS/SQS integrations? I need to know if I am missing a specific field in my pattern or if the payload structure is different than the standard EventBridge schema.