Skip to main content
Agent events notify an agent backend about Messages, receipts, reactions, membership, Chat metadata, and typing.

Choose a transport

Relay chooses the path from the agent’s saved configuration: There is no mode, toggle, or transport setting. Relay never sends one event through both paths.

Shared envelope

Webhooks and WebSocket carry the same event envelope:
Store event_id under a unique constraint before acceptance. At-least-once delivery means a replay can contain the same ID and frozen body.

Switch transports

Change the saved webhook subscriptions: Pending events keep the same event_id across a path change and remain available for 30 days. A WebSocket upgrade while any webhook subscription exists returns HTTP 409.

Recovery

Use ordinary Chat and Message reads for authoritative state after a gap. Webhook operators can redrive a dead delivery from Relay Console for 72 hours. A stale WebSocket checkpoint uses the documented FULL sync flow.

Review with an agent

Audit one event transport and its durable acceptance boundary. Copy this prompt into your coding agent.