For the complete documentation index, see llms.txt. Every page on this site is also served as Markdown: append `.md` to any URL, or send `Accept: text/markdown`.
Attensira Logo
Attensira

REST API endpoint

GET /v1/automations — every scheduled job and when it last ran

Lists every automation in the workspace with its instruction, trigger, status, timezone and last run. No parameters and no credits.

Karl-Gustav KallasmaaKarl-Gustav Kallasmaa, Founder & CEOLast updated
GET /v1/automationsNeeds read scopeSpends no creditsMCP tool: list_automations

The request

Paste this and change the key. Every endpoint takes a bearer key and none takes a workspace id — the key names the workspace.

curl https://api.attensira.com/v1/automations \
  -H "Authorization: Bearer atn_live_<your key>"

The response (200)

Abbreviated, never invented — this is the shape the published reference documents.

{
  "automations": [
    {
      "id": "aut_71cd",
      "name": "Monday visibility report",
      "instruction": "summarise last week's visibility and flag anything that moved",
      "trigger": "weekly",
      "tools": [],
      "status": "active",
      "timezone": "Europe/London",
      "run_at_minute": 540,
      "last_run_at": "2026-09-01T08:00:00Z"
    }
  ]
}

What goes wrong, and what it means

The condition on the left, the correct reading of it on the right.

An automation you expect to be running has status paused
It does not fire on its trigger. Nothing is wrong with the schedule; the automation is simply switched off, and no run will appear until it is active again.
A once automation shows status done
It already fired. A once trigger runs a single time and then reports done rather than active, so it is not stuck.
last_run_at is null
The automation has never run. On a manual or once trigger that is normal; on a daily or weekly one it usually means it was created after the most recent slot.

What this endpoint cannot tell you

The limits are part of the answer, not a disclaimer under it.

  • It cannot tell you what any run produced. The list carries the definition and a timestamp, not the answer — the run's output lives in the session it created, and reading it is a separate call.
  • An empty tools array does not mean the automation may use nothing. It means the default read-only set applies, which is the opposite of the reading the empty list suggests.

Automations are the part of Attensira that runs without anybody present, which makes an accurate inventory of them more important than it first appears. This endpoint is that inventory: every automation in the workspace, with enough of its definition to tell what it does and when.

What a row contains

An id and a name, so you can address it. The instruction, in the plain language it was written in — which is the automation's actual behaviour, not a summary of it. The trigger, which is one of manual, once, daily or weekly. An allow-list of tools. A status. A timezone and a minute-past-midnight, which together are the schedule. And a last-run timestamp.

Between them these answer the two questions people ask about a scheduled system: what is supposed to happen, and did it.

Read the status before blaming the schedule

The status field explains most of the confusion that ever arises here. active means the automation runs on its trigger. paused means it does not — the definition is intact, the schedule is intact, and nothing will fire. done is specific to a once trigger that has already run, and it is a completed state rather than a fault.

Almost every "my automation stopped working" investigation ends at this field, and it costs nothing to check first.

The empty tools list is a trap worth knowing

tools is an allow-list of the tools an automation may use. An empty array reads naturally as "no tools", and it means the opposite: the default read-only set applies. That is a sensible default — most automations report rather than act — but it is the single field on this response most likely to be misread by somebody writing an audit script.

If you want an automation restricted, you restrict it by naming what it may use, not by leaving the list empty.

Timezone and minute

The schedule is stored in the automation's own timezone, as an IANA zone name plus minutes past local midnight. Nine in the morning in London is 540 with a Europe/London zone, and the whole point of storing it that way is that it stays nine in the morning across a daylight-saving change.

Both fields are only meaningful for daily and weekly triggers. A manual or once automation carries them harmlessly.

Where to go next

This endpoint gives you definitions and one timestamp. It deliberately does not give you results, because a run's output is a session — a full trace of what the agent did, and an answer at the end — and inlining that for every automation in the workspace would make the list enormous.

If the question is "did the Monday report run, and what did it say", the single-automation endpoint is the right call: it returns the automation with its most recent run inline, so the common question costs one request rather than two. From there the session id leads to the whole trace.

Its twin on the other surface

The list_automations MCP tool takes no parameters and returns the same rows. It is one of the more useful read tools to leave enabled in an assistant, because "what is already scheduled?" is a question worth answering before anybody creates a second automation that does the same thing as the first.

Reading the instruction as documentation

One underrated use of this endpoint is as a record of what a workspace believes it is doing. The instruction field is returned verbatim, which means a listing is a readable inventory of every standing decision somebody has automated — the windows they chose, the slices they care about, the phrasing they settled on. Teams that inherit a workspace usually find at least one automation whose instruction no longer matches what anybody would ask for today, and reading the list end to end is the cheapest way to find it.

Questions people ask

What do the three statuses mean?
Active means it runs on its trigger. Paused means it does not. Done means a once trigger that has already fired.
What does an empty tools array mean?
The default read-only set. It is an allow-list, so leaving it empty allows the defaults rather than nothing.
Does listing automations cost anything?
No. It is read-only and takes no parameters. The cost of an automation is in the runs it performs, not in reading its definition.
How do I see whether last Monday's report actually ran?
The single-automation endpoint returns the most recent run inline, so that question costs one call rather than two.
What is run_at_minute?
Minutes past local midnight in the automation's own timezone, from 0 to 1439. It is only meaningful for daily and weekly triggers.

Sources

Every factual statement above, with the page it came from and the date that page was read.

  1. The Attensira API reference states that an automation with an empty tools array uses the default read-only set.

    docs.attensira.com · retrieved

    tools: [] means the default read-only set.
  2. The API reference states that an automation's status is active when it runs on its trigger, paused when it does not, or done for a once trigger that has already fired.

    docs.attensira.com · retrieved

    status is active (runs on its trigger), paused (does not), or done (a once trigger that already fired).

Next