Skip to main content
An automation lives on one board. It has a trigger, optional conditions and one or more actions. The live list is always available from GET /v1/automation-catalog, or from the MCP tool boardy_get_automation_catalog. Use it as the source of truth for the settings of each item. Each automation can be turned on and off. Its runs are listed with the result of each one (GET /v1/boards/{boardId}/automation-runs).

Triggers

Scheduled and date triggers are started by a timer. The others run when the change happens.

Conditions

A condition compares a cell with a value. The operators are Equals, NotEquals, Contains, IsEmpty, IsNotEmpty, GreaterThan and LessThan.

Actions

CallWebhook fills these tokens in bodyTemplate: {{item.name}}, {{item.id}}, {{board.name}} and {{cell:<columnId>}}. Plain text is sent as {"text": "..."}. The two Propose actions only make a request. If a matching gate exists, a person must approve it before anything is sent. If no gate matches, the action runs at once.

Create one through the API

Send POST /v1/boards/{boardId}/automations with:
  • name
  • trigger: { "type": "StatusChanged", "columnId": "<status column id>" }
  • conditions: a list, which may be empty
  • actions: a list of { "type": ..., "config": ... }
The config of an action is a JSON string. Turn the automation off with PATCH /v1/automations/{id}/enabled. A formula column does not start an automation. Source: worksong-ai/worksong:services/work/src/Boardy.Automation@9f0684f, worksong-ai/worksong:services/work/src/Boardy.Api/Program.cs@9f0684f. Docs version: Worksong 2.0 with Work 1.2.