---
title: "POST /workflows"
method: POST
path: "/workflows"
tags: ["workflows"]
---

# POST /workflows

`POST /workflows`

## Request body

- CreateWorkflowRequestDto
  - `id` string
  - `name` string, required
  - `description` string
  - `nodes` object[], required
    - `id` string, required
    - `type` string, required
    - `position` object, required
      - `x` number, required
      - `y` number, required
    - `data` object, required
      - `label` string, required
      - `config` object
  - `edges` object[], required
    - `id` string, required
    - `source` string, required
    - `target` string, required
    - `sourceHandle` string
    - `targetHandle` string
  - `viewport` object, required
    - `x` number, required
    - `y` number, required
    - `zoom` number, required

## Response `200`

- WorkflowResponseDto
  - `id` string, required
  - `name` string, required
  - `description` string, nullable
  - `graph` object, required
    - `id` string
    - `name` string, required
    - `description` string
    - `nodes` object[], required
      - `id` string, required
      - `type` string, required
      - `position` object, required
        - `x` number, required
        - `y` number, required
      - `data` object, required
        - `label` string, required
        - `config` object
    - `edges` object[], required
      - `id` string, required
      - `source` string, required
      - `target` string, required
      - `sourceHandle` string
      - `targetHandle` string
    - `viewport` object, required
      - `x` number, required
      - `y` number, required
      - `zoom` number, required
  - `nodes` object[], required
    - `id` string, required
    - `type` string, required
    - `position` object, required
      - `x` number, required
      - `y` number, required
    - `data` object, required
      - `label` string, required
      - `config` object
  - `edges` object[], required
    - `id` string, required
    - `source` string, required
    - `target` string, required
    - `sourceHandle` string
    - `targetHandle` string
  - `viewport` object, required
    - `x` number, required
    - `y` number, required
    - `zoom` number, required
  - `compiledDefinition` unknown, required
  - `lastRun` string, nullable, required
  - `runCount` integer, required
  - `createdAt` string, required
  - `updatedAt` string, required

## Changes

- **2025-10-24** `8db531c050e5` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/shipsecai/apis/shipsec-studio-api/changes/workflows/post.md)

---

[API](https://skmtc.dev/shipsecai/apis/shipsec-studio-api.md) · [All operations](https://skmtc.dev/shipsecai/apis/shipsec-studio-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/shipsecai/shipsec-studio-api/revisions/8db531c050e5/schema)
