Protocol

Wire Format

All EDS V2 messages are JSON text frames with the following envelope:

{
  "frameType": "<frame-type>",
  "framePayload": { ... }
}

frameType identifies the frame type. framePayload contains the frame-specific fields.

Frame Type Reference

Frame type Direction Description
EVENT Server → Client Delivers an event from the queue
ACK_EVENT Client → Server Acknowledges a received event
ACK_EVENT_REPLY Server → Client Confirms that an acknowledgement was processed
PING Client → Server Keep-alive probe
PONG Server → Client Keep-alive response

EVENT

Fields

Field Type Description
eventId string (UUID) Stable identifier for this event. Identical across redeliveries of the same event. Use this for deduplication.
eventType string The type of event (e.g. TENANT_ONBOARDED).
receiptId string Identifies this specific delivery attempt. Changes on each redelivery. Use this in the ACK_EVENT frame.
eventTs string (ISO 8601) Timestamp when the event occurred.
queueName string The queue through which this event was delivered.
eventPayload object Event-specific data. Fields vary by eventType — see Events.

Example

{
  "frameType": "EVENT",
  "framePayload": {
    "eventId": "a1b2c3d4-0000-0000-0000-000000000001",
    "eventType": "TENANT_ONBOARDED",
    "receiptId": "f9e8d7c6-0000-0000-0000-000000000002",
    "eventTs": "2026-03-20T14:30:00.000Z",
    "queueName": "my-integration-queue",
    "eventPayload": {
      "tenantId": "P0001",
      "empegoTenantId": "tenant-abc"
    }
  }
}

ACK_EVENT

Fields

Field Type Description
receiptId string The receiptId from the EVENT frame being acknowledged.

Example

{
  "frameType": "ACK_EVENT",
  "framePayload": {
    "receiptId": "f9e8d7c6-0000-0000-0000-000000000002"
  }
}

ACK_EVENT_REPLY

Fields

Field Type Description
receiptId string The receiptId that was acknowledged.

Example

{
  "frameType": "ACK_EVENT_REPLY",
  "framePayload": {
    "receiptId": "f9e8d7c6-0000-0000-0000-000000000002"
  }
}

PING

Fields

Field Type Description
correlationId string Client-chosen identifier to correlate the pong response.

Example

{
  "frameType": "PING",
  "framePayload": {
    "correlationId": "ping-001"
  }
}

PONG

Fields

Field Type Description
correlationId string Echo of the correlationId from the corresponding PING.

Example

{
  "frameType": "PONG",
  "framePayload": {
    "correlationId": "ping-001"
  }
}