In this module, we’ll go deeper into Events and learn about the types, or kinds of events and how they affect building Flows.


Course Material


In this module, we’ll go deeper into Events and learn about the types, or kinds of events and how they affect building Flows.

Overview

In Azuqua Building Blocks, we introduced the concept of an Event.

Very simply, Events are …

  • methods that monitor for a change in a your cloud application - and -
  • responsible for starting Flows.

In this lesson we’ll go deeper into Events and learn about the types, or kinds of events and how they affect building Flows.

The Event Card

Every Flow begins with an event, which takes the form of the “Event Card”.

The Event card is a special kind of card that allows you to select a start to your Flow.

Kinds of Events

Events may range from simply scheduling your Flow to execute at a given time, to launching your Flows based on specific activities in other applications.

You have a number of Event Types at your disposal:

  • Application Events
    • The Flow runs automatically based on an application event
    • These are the most common even that you will use
  • Schedule
    • Flow runs on a schedule, e.g. runs every hour, once a day, et cetera …
  • API Endpoint
    • Flow runs when invoked via an HTTP call using inputs that you specify.
  • Other Kinds of Events
    • Form
    • Flow runs each time a user clicks Submit on a simple, custom web form.
    • NOTE: Forms are not included in all packages
    • Child Flow
    • Flow runs when called from another Flow
    • NOTE: Child Flows are a more advanced topic and will be a separate topic

Let’s break each of these down and provide context into where and when you should use them …

Application-Based events

Initiating Flows based upon events within your cloud-based applications is the key to automating otherwise tedious manual processes.

You might want to kick off a process based on a number of different events. Some examples could involve monitoring for things such as :

  • New email
  • New customers
  • Updated records in a spreadsheet
  • Closed/won deals

A good thing to point out is that there is a discrete difference between “New Record” events and “Update Record” events. These require separate Flows …

  • A New Record (Like a new row in Smartsheet) looks simply for the addition of a new entry.
  • An Updated Record event looks at EXISTING records (rows, for example) and changes within them

Three Kinds of Application-Based events

There are several kinds of application-based events. They are …

  • Polling
  • Real-Time (or “Webhook”)
  • Invokable

While each kind may behave similarly (on the surface), there are subtle differences which are good to be aware of as you build your Flows.

1 - Polling

Polling events are perhaps the most common Event Type. They are …

  • Like a Scheduled Flow, but attached to a specific event
  • NOT real-time - by default run at 5-minute intervals (you can change this)
  • Only initiates the Flow when something is found that matches the event conditions

2 - Real-Time (or “Webhook”)

Within the interface, you may see events labeled as either Real-Time or “Webhook”.

As a best practice, we prefer the term “Real-Time”. These are initiated by services that support webhook frameworks. Also note, the terms “Real-Time” or “Webhook” would only be included where both kinds of events (Polling and Webhook-style) are offered for the same event.

In this case, your application may have built in support to call other applications (like a Flow) when something happens!

Let’s take the Smartsheet example from above and use this to explain:

  • Our application creates a link to call
  • As soon as new row is added - Smartsheet will “make a call” using this link and tell us there’s been a change

Nuances

Also important to note that while many APIs support webhooks, some don’t . Within a webhook, we “approximate” immediate response. Additionally, some application APIs that have webhook support may restrict usage to premium or system administrator accounts.

3 - Invokable (API Endpoints)

Invokable events are ….

  • Only found in connectors
  • Only used with services that can be configured to make an HTTP call to an API endpoint
  • Found only in certain applications
  • Require the product to provide a URL for the service, while still having a normal application UI for events

Again - the key difference here is that Invokable Event Types require manual configuration within the application being used

Summary

With a variety of Event Types at your disposal, you should now better understand how to kick off your Flows most effectively.

To learn more about how to express Events with Actions, make sure to check out the Actions and Events module.