Core Concepts

A quick tour of the four primitives that everything in JAMS Incident Management is built from. Knowing the names will save you time when reading other articles or clicking around the product.

Flow

A flow is a rule. "When X happens, notify Y people via Z channels with this escalation behavior." Everything else in JAMS Incident Management exists to support flows.

You can have as many flows as you want. Each one is independent β€” they can have different triggers, different recipients, different escalation timing.

Flows live at /flows. You build them via AI Helper or the manual builder.

Trigger

A trigger is what fires a flow. Five types today:

Trigger typeWhat fires itSetup
WebhookAn HTTP POST to a URL JAMS Incident Management gives youNone β€” URL is generated automatically
Email (IMAP)A message arriving in a mailbox you connectRequires an Email Connection
API monitorA scheduled GET against an endpoint, matching a conditionRequires an API Connection
Azure MonitorAn Azure alert rule webhookConfigure via Integrations β†’ Azure Monitor
JAMS SchedulerA JAMS Notification Job firing on a job failureConfigure via Integrations β†’ JAMS

Most teams' first flow is webhook-based β€” quickest to set up and works with anything that can make an HTTP request (curl, Postman, custom scripts, third-party monitoring tools).

Actions (channels + recipients)

An action says "send this through channel X to person Y." When a flow fires, JAMS Incident Management runs each of its actions in escalation order.

Six channels:

  • Voice call β€” most likely to wake someone up. Includes a spoken alert message, then asks for ack ("press 1 or say confirm").
  • SMS β€” quick visibility. Includes the alert text + a clickable ack link.
  • Email β€” best for non-urgent or detail-heavy alerts. Includes the full alert body + an ack button.
  • Push β€” Web Push to the installed PWA. Tapping the notification acknowledges it.
  • Microsoft Teams β€” posts the alert into a connected Teams channel with an Acknowledge button.
  • Slack β€” posts the alert into a connected Slack channel or DM with an Acknowledge button.

Recipients can be individual Team Members, Team Groups (reusable collections that expand to their current members at notification time), on-call rotations (resolved to whoever is currently on call, then escalated through the rotation), or a channel target such as a Teams channel.

Escalation

When an action goes out, JAMS Incident Management waits for the recipient to acknowledge β€” pressing 1 on the call, clicking the ack link in the SMS or email, or hitting "Acknowledge" in the JAMS Incident Management dashboard.

If they don't acknowledge within the flow's escalation interval, JAMS Incident Management advances to the next recipient in the flow and repeats. This is called sequential escalation.

When someone finally acknowledges, JAMS Incident Management cancels any in-flight actions in that flow group β€” the alert stops escalating immediately.

You set the escalation interval when you build the flow β€” it defaults to 5 minutes. 5 minutes is typical for non-urgent; 1-2 minutes for production-critical. If the flow uses an Escalation Policy, each level can set its own "escalate after N minutes," which JAMS honors per level instead of the single flow-wide interval.

The mental model

Read it like a sentence:

When the JAMS job fails (trigger), send an SMS (channel) to the on-call engineer (recipient). If they don't acknowledge within the escalation interval, escalate to the second on-call engineer, then the team lead.

Every flow you'll build is some variation of that shape. The triggers, channels, recipients, and timing change. The structure doesn't.

What's next