Skip to content

Workspace automations overview ​

Workspace automations are rule graphs that run across a workspace.

The workspace automation object ​

Attributes ​

  • id string (uuid)

    Unique identifier.

  • name string

    The automation name. Maximum 255 characters.

  • description string

    What the automation is for. An empty string when not set.

  • scope string

    The entity the automation runs on. work-item is the only value.

  • status string

    draft, published, or disabled. A new automation starts as draft. Enabling it sets published, and disabling it sets disabled.

  • is_enabled boolean

    Whether the automation runs. false on a new automation. Change it with the status endpoint.

  • is_global boolean

    Always true for workspace automations.

  • project_ids array of string (uuid)

    The projects the automation is associated with. Set them with project_ids on create or update. Plane drops ids that aren't projects in this workspace. An empty list when none are set.

  • run_count integer

    How many times the automation has run.

  • last_run_at string (date-time) or null

    When the automation last ran, or null if it hasn't run.

  • bot_user_id string (uuid) or null

    The bot user Plane creates for the automation. Its actions run as this user.

  • current_version_id string (uuid) or null

    The current version of the automation's graph. Plane creates the first version when it creates the automation.

  • created_at string (date-time)

    When the workspace automation was created.

  • created_by_id string (uuid) or null

    The user who created the automation.

  • updated_by_id string (uuid) or null

    The user who last updated the automation, or null.

  • updated_at string (date-time)

    When the workspace automation was last updated.

Response200
json
{
  "id": "9c1f0b3d-6d2e-4c9a-8b41-2f7e5a0d6c88",
  "name": "Triage new bugs",
  "description": "Assign new bugs to the on-call engineer.",
  "scope": "work-item",
  "status": "draft",
  "is_enabled": false,
  "is_global": true,
  "project_ids": ["16c61a3a-512a-48ac-b0be-b6b46fe6f430", "4a8e2c71-9b3d-4f05-a6e2-7c1d8b9f3e40"],
  "run_count": 0,
  "last_run_at": null,
  "bot_user_id": "f960d3c2-8524-4a41-b8eb-055ce4be2a7f",
  "current_version_id": "3d7b9e15-2a4c-4f68-b0d1-8e6c5a9f2b74",
  "created_at": "2026-01-14T09:22:41.478363Z",
  "created_by_id": "e2b1c4d7-5f3a-4e89-9c62-1a7d0b8f4e35",
  "updated_by_id": null,
  "updated_at": "2026-01-14T09:22:41.478363Z"
}

The automation activity object ​

The activity endpoints return this object.

Attributes ​

  • actor_id string (uuid)

    The related actor.

  • automation_edge_id string (uuid)

    The related automation edge.

  • automation_id string (uuid)

    The related automation.

  • automation_node_id string (uuid)

    The related automation node.

  • automation_run_id string (uuid)

    The related automation run.

  • automation_scope string

    The automation scope.

  • automation_version_id string (uuid)

    The related automation version.

  • created_at string (date-time)

    When the activity entry was created.

  • updated_at string (date-time)

    When the activity entry was last updated.

  • updated_by_id string (uuid) or null

    The user who last updated the activity entry, or null.

  • epoch number

    The epoch.

  • field string

    The field.

  • id string (uuid)

    Unique identifier.

  • new_identifier string (uuid)

    The new identifier.

  • new_value string

    The new value.

  • node_execution_id string (uuid)

    The related node execution.

  • old_identifier string (uuid)

    The old identifier.

  • old_value string

    The old value.

  • verb string

    The verb.

Endpoints ​

MethodPathDescription
GET/api/v2/workspaces/{slug}/automations/{automation_id}/activities/List automation activities
GET/api/v2/workspaces/{slug}/automations/{automation_id}/edges/List automation edges
GET/api/v2/workspaces/{slug}/automations/{automation_id}/nodes/List automation nodes
GET/api/v2/workspaces/{slug}/automations/List workspace automations
GET/api/v2/workspaces/{slug}/automations/{automation_id}/activities/{pk}/Get an automation activity
GET/api/v2/workspaces/{slug}/automations/{automation_id}/edges/{pk}/Get an automation edge
GET/api/v2/workspaces/{slug}/automations/{automation_id}/nodes/{pk}/Get an automation node
GET/api/v2/workspaces/{slug}/automations/{pk}/Get a workspace automation
POST/api/v2/workspaces/{slug}/automations/{automation_id}/edges/Create an automation edge
POST/api/v2/workspaces/{slug}/automations/{automation_id}/nodes/Create an automation node
POST/api/v2/workspaces/{slug}/automations/Create a workspace automation
PATCH/api/v2/workspaces/{slug}/automations/{automation_id}/edges/{pk}/Update an automation edge
PATCH/api/v2/workspaces/{slug}/automations/{automation_id}/nodes/{pk}/Update an automation node
PATCH/api/v2/workspaces/{slug}/automations/{pk}/Update a workspace automation
DELETE/api/v2/workspaces/{slug}/automations/{automation_id}/edges/{pk}/Delete an automation edge
DELETE/api/v2/workspaces/{slug}/automations/{automation_id}/nodes/{pk}/Delete an automation node
DELETE/api/v2/workspaces/{slug}/automations/{pk}/Delete a workspace automation
POST/api/v2/workspaces/{slug}/automations/{automation_id}/nodes/{pk}/regenerate-webhook-secret/Regenerate an automation node webhook secret
POST/api/v2/workspaces/{slug}/automations/{pk}/status/Enable or disable a workspace automation

Response shaping ​

Every workspace automation read accepts ?fields= for sparse responses. See Sparse fields. Errors follow the shared problem+json contract.