Background

Breakout Session

Events at the (API) Horizon: How to synthesize domain events & changes from your HTTP/REST APIs

REST-based Request-response APIs are the lifeblood of most architectures. API transactions,specifically involving the CUDs (Creates, Updates, Deletes) are great sources of events and/orchange data. This is also true of various RPC style APIs.However, because of the client-server nature, such events need to be published by the service,using an "outboxing" mechanism and subsequently disseminated to pub-sub event broker,most often Apache Kafka. This involves code changes to the application and in addition, a moreexpansive solution like CDC (change-data-capture) to collect those changes from the outboxtable.

In this session, we will present an alternative pattern that leverages standard API proxies /gateway solutions to process and push events to Kafka, as they occur in the API data plane atreal-time.

We will address the following important questions during this session:

1. How to source event data from APIs (and API gateways)

2. How to synthesize event data into the desired form

3. How to source change feeds against aggregates

4. Considerations and tradeoffs for this architecture

5. Key use-cases (hint:Event Sourcing, Data exchange Audit-trails and more!)

This is a potential no-code alternative to CDC, but with added benefits such as broad access todomain and context-specific request-response data, as opposed to having to process multiplerow-level changes. Finally, this also enables treating eventing as a cross-cutting concernassociated with API management and operations.

Attendees can expect to take away a new and interesting approach towards a progressive,low-friction transition to an event-driven architecture

Pavan Keshavamurthy

Platformatory