Skip to content

Event Basics

IFX is an event-based application. Integrations are hosted code, meant to receive events and apply custom logic to the data passed from the emitting application.

Integrations remain at rest until receiving an event from another application (i.e. Composer, WebSked) to which it is subscribed (more on this later). If no integrations are subscribe to that event, the event is skipped.

Event Types

IFX has two types of events: synchronous and asynchronous

Asynchronous Events

These events do not affect user experience because the process is “fire and forget”. The application that emitted the event is not expecing a response from your integation.

Synchronous Events

These events can affect user experience because the emitting application is waiting on a response from your integration. For example, if a user is submitting a payment which is being processed through your integation, they will have to wait until the process is complete and a response is returned to the emitting application.

Event Namespace

Events will be in the format [app name]:[event name] e.g. websked:pitch_create

Event Payload

For all events, the contract is as follows:

{
"key": "story:update", // event name
"version": 2,
"time": 1749134558, // timestamp
"uuid": "",
"body": {} // This JSON object is structured by the emitting application.
}

In the next few articles we will explore content events, subscribing to events, custom events, and more.



Have a feature request or suggestion? Let us know on Our Ideas Portal.