Skip to main content
POST
Add (or update) a table action on a list.

Authorizations

X-API-Key
string
header
required

Company API key - scoped to a specific company. Generate from the Integrations page in your dashboard.

Path Parameters

listId
string
required

Body

application/json

Table action configuration

Request body for adding (or updating) a table action — an automation attached to a list as an action column. Use GET /lists/actions to discover available actions and their default actionParameters; pass that template (with your customizations) as actionParameters here. Set autoRunEnabled=true to have the action fire automatically on new rows, and use conditions to restrict which rows it runs on.

actionParameters
object
required

Action configuration. Must include actionType (e.g. "agent", "ai_text", "http_request" — see GET /lists/actions) and a "name" for the action column. Other keys depend on the action type (e.g. an "agent" action takes "goal" and "model"). Actions run in "update_rows" mode, filling in a cell on each row.

actionId
string

Existing action/column ID (UUID) to update. Omit to create a new action.

autoRunEnabled
boolean

When true, the action runs automatically on rows as they are added to the list. Default: false. Pair with conditions to auto-run on only a subset of rows.

companyId
string

Company ID that owns the list. Required when authenticating with a personal access key (pak_…) — the key is not tied to a specific company so the server cannot infer it. Required when authenticating with a company API key only if the key belongs to a user who has access to multiple companies; otherwise it defaults to the key's company. Optional for JWT (dashboard) auth — defaults to the user's active company.

conditions
object

Optional run conditions restricting which rows the action runs on (applies to both auto-run and manual runs). An AND/OR tree of field comparisons — see ConditionsSchema for the full shape, operators, and examples. Null/omitted (or an empty filters+groups) runs on every row. The "field" in each condition is a column NAME (as in the list headers), and the row must already have that column for the comparison to match (except is_empty/is_not_empty).

Response

Action created or updated

Generic success response

msg
string

Human-readable success message (typically "Success")