big docs

Run statuses

A run is one contact's journey through one automation. Every time a trigger matches a person who doesn't already have a run open, big creates one and walks it through the automation's graph. big runs <automationId> and GET /api/automations/:id/runs print each run's status; here's what the five values mean.

The five statuses

StatusOpen?Means
activeyesThe run is working — walking the graph and queueing sends.
awaiting_replyyesThe run is parked at a branch, waiting for the contact's next DM to decide which way to go.
completednoIt reached the end of the graph. Nothing more will happen.
expirednoThe messaging window closed before it finished.
haltednoA safety guard stopped it.

The three terminal statuses are final: a run never leaves them, and a new trigger from the same person mints a fresh run rather than reviving the old one.

awaiting_reply is the one to understand

When an automation branches on what the person says, the run can't continue until they say something. It parks in awaiting_reply, remembers which branch node it's sitting on, and waits. Their next inbound DM resumes it from exactly that point.

This matters because of the one-open-run-per-contact rule: a contact can have at most one open run per connected account, and active and awaiting_reply both count as open. So while a run is parked waiting for a reply, the contact's next DM continues that conversation rather than starting a different automation — even if their message would have matched another automation's keyword perfectly.

That's usually the answer to "why did my other automation not fire for this person?" — see Fix an automation that didn't fire.

expired

Instagram only lets you DM someone inside an open window — 24 hours from their last DM, 7 days from their comment. If the window closes before the run finishes, the run is marked expired and stops. big does not queue the remaining messages for later, because Instagram would reject them.

The window is re-anchored by every new message from that person, so an active back-and-forth stays open. See The 24-hour window.

halted

halted means big stopped the run deliberately, as a guard rather than an outcome. The common causes:

  • The run hit its step limit. Each automation has a maximum number of actions per run; a run that reaches it stops instead of continuing.
  • The weekly plan cap blocked a new run from starting. A conversation already in flight is allowed to finish, but a run that can't take its first step is halted rather than left hanging. This includes the week after you go over the cap: a backlog of locked form responses is released before any automation runs, so the new week's budget can be spent before your automations get any of it. See Plans and cause 6.
  • A follower re-check loop ran out of attempts with no "still not following" path to route into.
  • The automation was deleted or its graph became unwalkable while the run was open.

A halted run is not a bug report on its own — the step limit and the plan cap are working as designed. A halt you can't account for is worth reporting.

completed

The run walked to the end of its graph. Note that "completed" describes the run, not delivery: a message can be queued successfully and still fail on its way to Instagram. If a run reads completed but nothing arrived, check the send queue — cause 13.

Run statuses | big