app.automation_actions
TableRow level security on
One action of an automation, run in position order as the owner through a public API operation (ADR 0047): create_task (records.create), update_status (records.transition), assign (records.update), add_comment (comments.postOnSubject), notify (automationRuns.notify) or call_webhook (automationRuns.deliverWebhook). Templates may name event paths in double braces, such as {{data.title}}.
Primary key: id
| Column | Type | Nullable | Description |
|---|---|---|---|
| id | uuid | No | Primary key, UUID v7. |
| org_id | uuid | No | Owning org, derived from app.automations on insert; never accepted from the caller and never changed.References app.organizations.id |
| automation_id | uuid | No | Automation the action belongs to.References app.automations.id |
| position | smallint | No | Order the actions run in, 1 first. |
| action_type | app.automation_action_type | No | What the action does. |
| title_template | text | Yes | create_task: the Task title (imperative verb first); notify: the notification title. |
| body_template | text | Yes | add_comment: the comment; notify: the message; update_status: the blocker or replan reason Blocked and Deferred need. |
| project_id | uuid | Yes | create_task: the project the Task goes in, under its engagement root; null means the event's project.References app.projects.id |
| phase_code | text | Yes | create_task: the Task's gated phase.References xpms.dim_phase.phase_code |
| xyz | xpms.xyz_tag | Yes | create_task: the Task's declared XYZ tag. |
| due_in_days | smallint | Yes | create_task: due at 17:00 on the org's calendar this many days after the run; null for no due date. |
| to_state | text | Yes | update_status: the record state the subject record moves to.References xpms.dim_record_state.record_state |
| assignee_person_id | uuid | Yes | assign: the member who becomes the subject record's owner.References app.people.id |
| recipient_person_id | uuid | Yes | notify: the member who receives the notification.References app.people.id |
| webhook_endpoint_id | uuid | Yes | call_webhook: the org's webhook endpoint the event is delivered to, signed as every webhook is.References app.webhook_endpoints.id |
| created_at | timestamp with time zone | No | When the row was inserted. Set by the database. |
| created_by | uuid | Yes | Person who inserted the row, or null for a platform process. Set by the database.References app.people.id |
| updated_at | timestamp with time zone | No | When the row last changed. Set by the database. |
| updated_by | uuid | Yes | Person who last changed the row, or null for a platform process. Set by the database.References app.people.id |
| deleted_at | timestamp with time zone | Yes | Soft delete time. A row with deleted_at set is ignored by every access helper. |