EventBridge duplicate events on Genesys interaction update

We’re seeing duplicate routing.interaction.update events hitting our EventBridge consumer. The event_id changes every time, so standard deduplication logic isn’t working.

Here’s the payload structure we’re getting:

{
 "source": "genesys.cloud",
 "detail-type": "routing.interaction.update",
 "detail": {
 "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
 "state": "queued",
 "updated_time": "2023-10-27T15:30:00.000Z"
 }
}

The interaction ID stays the same, but the updated_time shifts by milliseconds. We’ve tried:

  • Using detail.id as the dedup key in SQS FIFO (still get duplicates)
  • Checking for identical updated_time values (not reliable due to clock skew)
  • Filtering on specific state changes only (misses some updates)

Anyone have a solid deduplication pattern for these events? We’re losing about 15% of our processing capacity handling the noise.