API Maker

The backend engine for the AI era

EventsEpisode 21 4:23 9 chapters October 2026

Event-Driven APIs: React to Saves, Code and HTTP Calls

Code that reacts to what happens: after a save, from your code, or over HTTP, without a queue or a worker to run. Follow the events of Calm Home: an order saved, a row written behind the answer, a chain of events emitted from code, and a careless loop stopped by API Maker.

In the playlists The complete course Events & realtime

Chapters

What you will learn

  • An event and its trigger
  • A listener that runs behind the answer
  • A real save fires it
  • An event emitted from code
  • A chain of events
  • A careless line, and a loop stopped
In the docsEvents
Transcript544 words · click a time to play from there

Intro

Code that reacts to what happens : after a save, from your code, or over HTTP, without a queue or a worker to run. In this video, the events of Calm Home : an order saved, a row written behind the answer, a chain of events, and a loop stopped.

Reactions, the usual way

Reacting to a save usually means side effects packed into the API that saves, or a message queue and its workers to install for a few lines of code, and one day, two handlers which call each other for ever. With API Maker, an event names the APIs which emit it, its listeners run behind the answer, in any language, and a chain which comes back on itself is refused.

In this video : an event and its trigger, a listener, a real save, a chain from code, and a loop stopped.

An event and its trigger

APIs and Logic, Events. Add New : orders/placed ; the slash makes a folder. Automatically Trigger On API Hit, Add : Instance APIs, mysql, sales, orders, and Save single-multiple. Add to the event : every save of an order emits it. Save. The folder orders, the event, and a listener : log-event. Its code gets the answer of the save in g.req.eventData, and writes a row of order_events for each order saved.

Save.

A real save

API Testing, mysql, sales, orders, Save single-multiple. The body : a new order, CH-2026-0950. Send : the order is saved and answered at once ; the event runs behind the answer. order_events, Get all, with a find : the rows of source event. The row log-event wrote : PLACED, for that order.

A chain from code

A listener can emit another event from code. award-points, a second listener of orders/placed, emits customers/points with g.sys.system.emitEvent, and waits for its answer. The listener of customers/points, loyalty, counts a point for every ten spent. To see the whole chain : System APIs, Emit event. The body : orders/placed, with the data a save sends. Send : both listeners answer, in their order. log-event logged the order, and award-points carries the answer of customers/points : twelve points.

A loop stopped

Now a careless line. loyalty announces the order again, with orders/placed. orders/placed would emit customers/points, which would emit orders/placed, for ever. System APIs, Emit event, the Body tab, the same body. Send : four hundred. Circular chain found in event emitting : orders/placed, customers/points, orders/placed. A chain may go as deep as it needs ; a return to an event which is still running is refused.

Good to know

Listeners run in their order, and one which fails does not stop the next. Each listener has a timeout ; left empty, the timeout of the sandbox. Custom APIs and system APIs can emit an event too, and listeners are written in eight languages. Over HTTP, Emit event needs a System API Setting, like every system API : video nineteen.

Built on standards

Side effects are declared, not hidden inside the API. Every reaction has a name, an order, a timeout, and its history in Git. And a loop is refused, even in code an AI assistant wrote.

Recap

To sum up. Events emitted by the APIs you choose. Listeners which run behind the answer. Chains, from code. And loops refused. Next : WebSockets, live data without a realtime server. API Maker. Build faster, spend smarter, deliver better.