---
title: "Create Flow"
method: POST
path: "/api/flows/"
tags: ["Flows"]
---

# Create Flow

`POST /api/flows/`

## Request

- The document declares no server URL.
- Auth: none declared

Gracefully creates a new flow from the provided schema. If a flow with the
same name already exists, the existing flow is returned.

## Headers

- `x-prefect-api-version` string

## Request body

- FlowCreate: Data used by the Prefect REST API to create a flow.
  - `name` string, required: The name of the flow
  - `tags` string[]: A list of flow tags

## Response `200`

Successful Response

- Flow: An ORM representation of flow data.
  - `id` string, uuid
  - `created` string, date-time
  - `updated` string, date-time
  - `name` string, required: The name of the flow
  - `tags` string[]: A list of flow tags

## Other responses

- `422`: Validation Error

## Changes

- **2024-04-03** `1300477de63f`: 1 breaking
  - the request property `name` became required

[Operation history](https://skmtc.dev/prefecthq/apis/prefect-unreleased-api/changes/api/flows/post.md)

---

[API](https://skmtc.dev/prefecthq/apis/prefect-unreleased-api.md) - [All operations](https://skmtc.dev/prefecthq/apis/prefect-unreleased-api/llms.txt) - [OpenAPI document](https://skmtc.dev/prefecthq/apis/prefect-unreleased-api/revisions/29ba6c4f8837?raw)
