Skip to main content
An automation gives one agent a saved prompt and starts a run each time its trigger fires. Its id looks like aut_ plus 16 characters. The dashboard calls it a routine. The API and CLI call it an automation. For the steps, see Schedule a routine and Start a run from a webhook.

States

Triggers

concurrencyPolicy is skip_if_running or allow_concurrent. With skip_if_running, a fire is skipped while an earlier run is still queued or running. A workflow name makes each GitHub fire start that workflow instead of a run. Only a github trigger can carry a workflow.

Skip reasons

A fire that starts no run is recorded as a skip. List them with GET /api/v1/automations/:automationId/skips.

Fields

string
required
Automation id, aut_ plus 16 characters.
string
required
Always automation.
string
required
Workspace id.
string
Project id. Null when unset. Create and update do not set it.
string
required
Label.
string
Markdown description. Null when unset.
string
required
active, paused or archived.
object
required
What fires the automation.
string
required
The prompt each fire’s run starts from.
string
Workflow a GitHub fire starts instead of a run. Null when unset.
string
required
Agent that runs, agt_ id.
string
Model override. Null means the agent’s default.
string
cloud or device. Null means the agent’s default.
string
required
skip_if_running or allow_concurrent.
object
required
Who created it.
object
Most recent run. Null when it never ran.
string
Archive time. Null when not archived.
string
required
ISO 8601.
string
required
ISO 8601.
string
The secret webhook URL. Present only on create, rotate, or an update that switched the trigger to webhook.
run returns an automation_fire object. Its kind is triggered with a runId, or skipped with a reason of concurrency or not_active. runId is null when no run was admitted.

CLI

--agent takes me, an agt_ id or an @handle. --tz defaults to UTC.

API

The webhook token is the last segment of webhookUrl. The same body sent twice returns the run the first one started.

Errors

The webhook path also returns 413 payload_too_large and 429 rate_limit_exceeded. See API errors for the shared codes.

Limits

  • A webhook automation takes 60 POSTs per hour. A rejected call is recorded as a rate_limited skip.
  • A webhook body can be up to 1 MiB.
  • The run sees the first 32 KiB of a webhook body.
  • A list page holds 1 to 100 items, 25 by default.
  • q on the list is at most 100 characters.
  • A workflow name is at most 64 characters, lower-case letters, digits and underscores.

Schedule a routine

Create, test, pause and archive a scheduled automation.

Start a run from a webhook

Fire an automation with a POST from your own system.

Run

The run each fire starts.

Workflow

The program a GitHub fire can start instead.