---
title: "Add Automation Node"
method: POST
path: "/api/v1/automations/{automation_id}/nodes"
tags: ["automations"]
---

# Add Automation Node

`POST /api/v1/automations/{automation_id}/nodes`

Add one node. Requires EDITOR; delegates to the same primitive the architect uses.

The node is created unwired — POST ``/edges`` next. ``warnings`` carries the advisory
data-flow findings for the graph as it now stands (never blocking).

## Path parameters

- `automation_id` string, uuid, required

## Request body

- NodeCreate
  - `slug` string, required
  - `kind` 'trigger.schedule' | 'trigger.entity_change' | 'trigger.app_invocation' | 'fetch_entities' | 'query' | 'update_entity_row' | 'create_entity_row' | 'load_scenario_revision' | 'custom_code' | 'dataset_sink' | 'if' | 'aggregate_to_one' | 'ai_step' | 'send_email' | 'http_request' | 'provider_action', required — All v1 node kinds. Triggers + body nodes share one enum + one table.
  - `config` object
  - `position_x` integer, nullable
  - `position_y` integer, nullable

## Response `201`

Successful Response

- object

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/netter/apis/dmi-backend.md) · [All operations](https://skmtc.net/netter/apis/dmi-backend/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/netter/dmi-backend/revisions/aecc29b8a546/schema)
