---
title: "Search node types"
method: GET
path: "/v1/automation-nodes"
tags: ["Automations"]
---

# Search node types

`GET /v1/automation-nodes`

## Request

- Base URL: `https://api.banksync.io`
- URL: `https://api.banksync.io/v1/automation-nodes`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

Every node type a BankSync automation may use — triggers, banking, tables, flow, transforms, AI — 50 to a page, with when to use each.

## Query parameters

- `search` string: Words to match a node type’s title and description
- `category` string: Only node types of this category
- `cursor` string: The `nextCursor` of the previous page
- `limit` integer

## Response `200`

A page of node types

- object
  - `success` true, required
  - `data` object, required
    - `items` object[], required
      - `type` object, required
        - `package` string, required
        - `operation` string, required
        - `version` string, required
      - `kind` 'trigger' | 'action' | 'container' | 'flow' | 'transform' | 'supply', required
      - `title` string, required
      - `description` string, required
      - `category` string, required
      - `presentation` object
        - `icon` string
        - `family` 'start' | 'app' | 'decide' | 'shape' | 'ai' | 'people'
        - `app` string
        - `sentence` string
        - `summary` string
    - `nextCursor` string, nullable, required: Send it as `cursor` for the next page; null on the last page.
    - `total` integer, required
    - `categories` string[], required

## Other responses

- `400`: Invalid input, or the draft has blocking findings — `code` names the refusal (`AUTOMATION_BLOCKED_BY_FINDINGS`, `AUTOMATION_SECRET_REFUSED`, …) and `details[]` each finding with its node
- `401`: Unauthorized
- `403`: Forbidden — missing scope, insufficient role, a credential narrowed to some accounts, or a grant the caller does not hold
- `404`: Not found — or automations are not enabled for this workspace
- `409`: Conflict — the draft moved since you read it (`AUTOMATION_VERSION_CONFLICT`), the automation is not published or not active, or a grant does not hold (`AUTOMATION_GRANT_STATE`)
- `429`: The automation’s admission refused the run and does not queue (`AUTOMATION_ADMISSION_REFUSED`, `AUTOMATION_RATE_LIMITED`): `code` names which, and the `Retry-After` header says how many seconds to wait before trying again. A start that queues is a 202, not this.
- `503`: Automations are paused while an incident is worked (`AUTOMATIONS_STOPPED`) or not configured here (`AUTOMATIONS_UNAVAILABLE`): `code` names which, and the `Retry-After` header says how many seconds to wait before retrying

---

[API](https://skmtc.dev/banksync/apis/banksync-api.md) · [All operations](https://skmtc.dev/banksync/apis/banksync-api/llms.txt) · [OpenAPI document](https://skmtc.dev/banksync/apis/banksync-api/revisions/94465f5ee922?raw)
