An event source is where events originate. Each event source produces events and publishes them to EventBridge for filtering and routing. For example, Object Storage Service (OSS) is the event source for storage-related events, and your own application is the event source for custom events that you define.
Event source types
EventBridge supports two categories of event sources:
| Category | Bus type | Connection model |
|---|---|---|
| Alibaba Cloud service | Default event bus | Automatic. Activated Alibaba Cloud services publish events without additional configuration. |
| Custom | Custom event bus | Manual. Connect through an SDK, a message queue provider, or an HTTP/HTTPS webhook. |
After an event source publishes events to an event bus, EventBridge filters the events by using event patterns and routes matching events to event targets.
Alibaba Cloud service event sources
When you activate an Alibaba Cloud service, it automatically connects to EventBridge as an event source and publishes events to the default event bus. To start routing these events:
Select an event source and event types from the predefined options.
Define an event pattern to filter events.
Specify event targets to receive the filtered events.
No SDK integration or additional setup is required.
Custom event sources
Custom event sources publish events from your applications and external services to custom event buses. EventBridge supports three connection methods:
SDK integration (push-based)
Use this method when you control the event publishing logic in your application.
Create a custom event bus.
Configure an event pattern and event targets for the bus.
Use the EventBridge SDK in your application to publish events to the custom event bus.
Events are filtered by the configured event pattern and routed to the specified targets.
Message queue provider (pull-based)
Use this method to connect a message service without modifying the source service. Specify the service as an event provider, and EventBridge pulls events directly from the provider.
For example, if you specify Message Queue for Apache RocketMQ as the event provider, EventBridge pulls messages from your RocketMQ resources and publishes them to a custom event bus for filtering and routing.
For setup instructions, see Create a custom event source of the Message Queue for Apache RocketMQ type.
HTTP/HTTPS webhook (push-based)
Use this method for external services or third-party systems that support outbound webhooks but lack a dedicated EventBridge SDK.
When you configure this type of event source, EventBridge generates a webhook URL. Any HTTP or HTTPS request sent to that URL is published as an event to EventBridge.
For setup instructions, see Create a custom event source of the HTTP/HTTPS Events type.
Comparison of custom event source methods
| Method | Direction | When to use | Source code changes |
|---|---|---|---|
| SDK integration | Push | You control the application and can add SDK calls | Yes |
| Message queue provider | Pull | Events already exist in a message queue service | No |
| HTTP/HTTPS webhook | Push | External system supports outbound webhooks | No |