Skip to content

List automation nodes ​

GET/api/v2/workspaces/{slug}/projects/{project_id}/automations/{automation_id}/nodes/

Project automations are rule graphs that run inside one project. List the automation nodes you can see. Results are scoped to the path and to what your token is allowed to read.

Path Parameters ​

slug:requiredstring

The workspace slug. It appears in your Plane URLs — in https://app.plane.so/my-team/projects/, the slug is my-team.

project_id:requiredstring

The project the resource belongs to. Accepts the project UUID or its bare identifier, for example ENG.

automation_id:requiredstring (uuid)

The automation the resource belongs to.

Query Parameters ​

count:optionalboolean

Set to false to skip the total_count COUNT(*) (omits total_count).

handler_name:optionalstring

Filter by handler_name.

is_enabled:optionalboolean

Filter by is_enabled.

name:optionalstring

Filter by name.

node_type:optionalstring

Filter by node_type.

offset:optionalinteger

Number of rows to skip from the start of the result set.

order_by:optionalstring

Field to order the list by. Prefix with '-' for descending (e.g. '-created_at'). Annotation-backed orders sort semantically and ride the default offset page.

paginate:optionalstring

Set to 'cursor' to opt into the COUNT-free keyset cursor envelope (use for deep traversal); omit for the default offset envelope with total_count.

One of cursor.

per_page:optionalinteger

Page size (max 200).

search:optionalstring

A search term.

Response shaping ​

fields:optionalstring

Comma-separated list of fields to return. Unrequested keys are omitted from each row, not returned as null. id always comes back. Pass all for every requestable field.

An unknown name is a 400 that names the valid set, so a typo can't silently cost you the saving. See Sparse fields.

Requestable here: config, created_at, created_by_id, handler_name, id, is_enabled, last_triggered_at, name, next_scheduled_at, node_type, updated_at, version_id.

Scopes ​

automations:read

Errors ​

StatusCodeCause
401unauthorizedMissing or invalid credentials.
402payment_requiredThe feature this endpoint belongs to isn't enabled on your plan or is switched off.
403forbiddenYour role or token scope doesn't allow this.
404not_foundNo such resource, or it's outside your tenant.
406not_acceptableThe Accept header asks for a representation the API can't produce.
429rate_limitedThrottled. Honor the Retry-After header before retrying.
List automation nodes
bash
curl -X GET \
  "https://api.plane.so/api/v2/workspaces/my-team/projects/4af68566-94a4-4eb3-94aa-50dc9427067b/automations/9c1f0b3d-6d2e-4c9a-8b41-2f7e5a0d6c88/nodes/" \
  -H "X-Api-Key: $PLANE_API_KEY"
Response200
json
{
  "data": [
    {
      "config": null,
      "created_at": "2026-01-14T09:22:41.478363Z",
      "created_by_id": "16c61a3a-512a-48ac-b0be-b6b46fe6f430",
      "handler_name": "example",
      "id": "b7e42a19-3c5d-4f80-9a26-8d1c0f4e7b53",
      "is_enabled": false,
      "last_triggered_at": "2026-01-14T09:22:41.478363Z",
      "name": "Example name",
      "next_scheduled_at": "2026-01-14T09:22:41.478363Z",
      "node_type": null,
      "updated_at": "2026-01-14T09:22:41.478363Z",
      "version_id": "f960d3c2-8524-4a41-b8eb-055ce4be2a7f"
    },
    {
      "config": null,
      "created_at": "2026-01-13T16:04:02.911204Z",
      "created_by_id": "16c61a3a-512a-48ac-b0be-b6b46fe6f430",
      "handler_name": "example",
      "id": "8f4c2b1e-0d3a-4f7b-9c21-6e5a8b7d4f13",
      "is_enabled": false,
      "last_triggered_at": "2026-01-14T09:22:41.478363Z",
      "name": "Another example",
      "next_scheduled_at": "2026-01-14T09:22:41.478363Z",
      "node_type": null,
      "updated_at": "2026-01-14T09:22:41.478363Z",
      "version_id": "f960d3c2-8524-4a41-b8eb-055ce4be2a7f"
    }
  ],
  "next": 1,
  "pagination": {
    "style": "offset"
  },
  "previous": 1,
  "total_count": 3
}