IBM Cloud Docs
What is Event Notifications?

What is Event Notifications?

IBM Cloud® Event Notifications is a routing service that provides you information about critical events that occur in your IBM Cloud account or triggers automated actions by using webhooks. You can filter and route event notifications from IBM Cloud services like monitoring, to communication channels like email, SMS, and webhooks.

Event Notifications
Event Notifications

Features

Centralized alert routing

From a single dashboard, you can route event notifications from IBM Cloud Security and Compliance Center, IBM Cloud Secrets Manager, or IBM Cloud Monitoring to relevant stakeholders. You can also filter alerts by severity and choose a communication channel that is most appropriate, for example SMS or push, for immediate priority or email for lesser priority alerts.

Filtered source events

Filter incoming events into one or more topics. Use filters to fine-tune topic content to adjust the event set you need. Connect multiple topics to one source, or connect multiple sources to a single topic.

Built-in communication providers

Event Notifications comes with basic email and SMS capability that is built into the service. Add the IBM Cloud email or IBM Cloud SMS destination to any Event Notifications subscription for instant connectivity. With a few more steps, you can add the push notification destination to your source list and subscribe to that destination as well.

Webhooks

Send event notifications to any webhook destination. Use webhooks to integrate outbound notifications into management and collaboration tools, or into your own applications.

Fanout

Route a single event notification to many destinations with just a few clicks. Send the notification to a person, to your application, and to your automation suite, all at the same time.

Governance

Event Notifications user and notification activity can be tracked through IBM Cloud Activity Tracker and IBM Cloud Logs so you can find out what happened and when.

Concepts

Learn about IBM Cloud® Event Notifications concepts such as filters, conditions, and topics.

Event

An occurrence of something of interest that is associated with IBM Cloud platform or services and apps that run on it.

Event notification

A digitized message that is triggered when an event occurs. Event notifications come in to the Event Notifications service from event sources. Sometimes "event notification" is shortened to "event" or "notification" in the context of the Event Notifications service.

Event source

A service or application on IBM Cloud that emits event notifications and publishes them to a topic within the Event Notifications service. A source is a registered entity in an Event Notifications service instance. Several services on IBM Cloud are set to be integrated to send notifications to Event Notifications.

IBM Cloud Monitoring, IBM Cloud Security and Compliance Center, IBM Cloud Secrets Manager Platform Notifications for IBM Cloud, IBM Cloud Resource Lifecycle Events, IBM Cloud Projects, and Toolchain are enabled. A source can publish to multiple topics. In other contexts sources are identified as producers or publishers.

Size limit for a send notification request is limited to 64 KB.

Filter

A mechanism for selectively passing event notifications from a source into a topic. A topic has an independent filter for each source that is connected to it.

Condition

One of many criteria can be used for filtering. Event Notifications whose attributes match a condition are passed through to a topic. Notifications whose attributes do not match a condition are dropped.

Ingested event notification

  • An event notification that is evaluated by a filter. Ingested events are a primary billing metric. The price for ingested events is the same for all sources. If no filter is defined for a source, none of the events from that source are ingested.

  • If a filter is defined for a source but no event notifications are passed through, the number of notifications that bounced are still considered "ingested" because they were analyzed by a filter.

Topic

  • A landing place for filtered events. Topics hold a set of incoming event notifications of interest. Each source is connected to a topic through a user-defined filter. Notifications that pass into a topic are pushed to all subscribed destinations. A topic can connect to multiple sources.

  • Event notifications that end up in a topic are routed to destinations. A topic can be connected to multiple sources. Although topics are innately coupled to sources by using filters, they are not innately coupled to destinations. That coupling happens through subscriptions.

Destination

A delivery target for Event Notifications. In other contexts, destinations are also called channels, sinks, consumers, or subscribers.

  • Human destination: A device, server, or application presents notifications for human consumption. Examples of human destinations are email servers, SMS text providers, and push notification services.

    Specific email addresses, phone numbers, and device IDs can be part of a subscription to a destination, but they are not part of the destination itself.

  • Service destinations: A cloud service or an application where notifications are consumed programmatically. A webhook to a backend microservice is an example of a service destination.

Service-to-service

A way to describe a notification that travels from a cloud service to a service destination. In other contexts, service-to-service is also categorized as app-to-app.

Service-to-human

A way to describe a notification that travels from a cloud service to a human destination. In other contexts, service-to-human is also categorized as app-to-person.

Subscription

An association of one topic to one destination. If a destination requires additional information to operate correctly (for example, email addresses for an email destination), then that information is included in the subscription.

Subscriber

An entity that is targeted by a subscription. For webhooks, the webhook host is the subscriber. For human destinations, email addresses and phone numbers (or the people who own them) are subscribers.

One subscription can have only one destination, but it can have many subscribers within that destination. 

Outbound digital message

An event notification that is sent from the Event Notifications service to a subscriber. Outbound digital messages are a primary billing metric for the Event Notifications service. The price for outbound digital messages varies by destination (for example, outbound digital messages to SMS are priced differently than outbound digital messages to email). In most cases a dispatch (attempt to deliver) is considered an outbound digital message, regardless of whether the delivery was successfully.

Digital message origin

The originating phone number or origin ID for a text message, and the originating domain or IP address for email. In, most countries the sender is obligated by law to be transparent about the origin of a digital message. If you select the IBM SMS Service or IBM Email Service as a destination for your subscriptions, the text messages that user receives has an origin that is owned by IBM.

SMS message

A text message in Simple Messaging Service format.

SMS message segment

A group of 160 characters within an SMS text message. A single message can contain many segments. Each message segment counts as one outbound digital message for billing purposes.

SMS unit

A pricing unit for SMS text messages.

Event Notifications relationship model

Event Notifications includes sources, filters, topics, destinations, and subscriptions. The relationship between these elements is shown in Figure 1.

Event Notifications flow
Figure 1. Event Notifications relationship model

Events originate outside Event Notifications, for example, from IBM Cloud services. An 'event source' within Event Notifications represents a connection between Event Notifications and one of these event-producing services.

Topics have associated filters that determine which source events are published. Topics can have multiple sources, each with their own filter. Topics isolate events of interest from various sources and aggregate them into one entity.

Subscriptions tie topics to destinations. While a single topic or destination can be associated with multiple subscriptions, a subscription is one-to-one, meaning it ties one topic to one destination. For service-to-human channels, one subscription can contain multiple recipients. For example, a subscription to an email destination is not restricted to just one email address but instead has a recipient list that might hold many addresses.

Event notification flow

When an event occurs in a registered source, the source sends an event notification to the Event Notifications service. Based on the filters or conditions that are defined on the source, this incoming notification is targeted to one or several topics. The notification is delivered to all destinations, which are subscribed to the targeted topics.

Event notification format

A notification sent to the Event Notifications service must conform to the CNCF CloudEvents format.

More about filters

A filter is a conditional statement, which connects a source to a topic. Filters are written to route notifications of interest to a particular topic. All notifications that pass through the filters into a topic are then routed to the topic subscribers. Filtering is absent between topic and destination.

To simplify filtering, a source might include event categories in their notifications. Event categories are standard filter keys with the following hierarchy: Event Category -> Event Type -> Severity. Event categories simplify filtering because they appear as dropdown selection boxes when you are creating topics and filters in the Event Notifications UI. For more advance filtering, use JSONPath in the Custom Filter field. For more on JSONPath, see JSONPath Online Evaluator.