Skip to content

Event Gateway Overview

The Event Gateway is a self-hosted runtime that performs Protocol Mediation — acting as the bridge between web-friendly protocols (WebSocket, WebHook, SSE) and message brokers (Kafka, MQTT, Solace). It enables you to expose event brokers as subscribable APIs while enforcing policies such as authentication, authorization, and rate limiting through the centralized API Platform’s Policy Hub.

Quick Start

  • Getting Started - Create an event gateway in the API Platform Console, download and start the gateway, and deploy a WEBSUB API proxy

What is Protocol Mediation?

Traditional API gateways are designed for request-response traffic. Event-driven architectures, however, use message brokers such as Kafka and MQTT, which communicate over broker-specific protocols that are not directly accessible to web clients.

Protocol Mediation solves this by placing the Event Gateway between the broker and web clients, translating between broker protocols and web-friendly protocols such as WebSocket, WebHook, and Server-Sent Events (SSE). This means external clients can consume from or produce messages to an event broker using standard web protocols, without needing native broker client support.

Key Concepts

Event Gateway Architecture

The Event Gateway consists of three components that work together in the mediation flow:

Component Role
Receiver Entry point for web-friendly protocol clients (WebSocket, WebHook, SSE). Accepts inbound connections and messages from external clients.
Policy Engine Enforces policies on inbound and outbound flows, including authentication, authorization, rate limiting, and delivery guarantees.
Broker Driver Bridges the Event Gateway and the backend message or event broker (e.g., Kafka, MQTT, Solace). Handles protocol translation to and from the broker.

Event Gateway Architecture

WebSub APIs

A WebSub API is an event-driven API type supported by the Event Gateway. It follows the WebSub specification and enables webhook-based publish/subscribe flows.

A WebSub API exposes two resources:

Resource Description
/webhook-receiver?topic=<topic name> Used by a WebHook Provider to push a WebHook payload to a specific topic in the Event Gateway
/hub Used by Subscribers to subscribe to or unsubscribe from a topic

Documentation

Section Description
Getting Started Quick setup: create the event gateway, deploy a WEBSUB API proxy, and test it
Setting Up Production deployment on VM, Docker, or Kubernetes
Publish APIs Publish APIs to the Developer Portal with subscription support
Troubleshooting Common issues and solutions