---
title: "Deploy Workflow"
method: POST
path: "/api/v1/workflows/{id}/deploy"
tags: ["Workflows"]
---

# Deploy Workflow

`POST /api/v1/workflows/{id}/deploy`

Deploy the workflow's current draft state. Creates a new deployment version, makes it live for API execution, and activates any schedules and triggers. Optionally accepts a name and description for the new version. Requires admin permission on the workflow's workspace. Returns 404 when the workflow does not exist or you do not have access to it.

## Path parameters

- `id` string, required

## Request body

- object
  - `name` string — Optional label for the new deployment version.
  - `description` string, nullable — Optional summary of what changed in this version.

## Response `200`

Workflow deployed successfully.

- object
  - `data` WorkflowDeployment — Deployment state of a workflow after a deploy, undeploy, or rollback operation.
    - `id` string — Unique workflow identifier.
    - `isDeployed` boolean — Whether the workflow is deployed and available for API execution after the operation.
    - `deployedAt` string, date-time, nullable — ISO 8601 timestamp of the active deployment. null after an undeploy.
    - `version` integer — The deployment version that is now active. Omitted for undeploy.
    - `warnings` string[] — Non-fatal warnings. Present when trigger, schedule, or MCP side-effect sync is still in progress or needs a redeploy.
  - `limits` Limits — Rate limit and usage information included in every API response.
    - `workflowExecutionRateLimit` object — Current rate limit status for workflow executions.
      - `sync` RateLimitBucket — Rate limit status for a specific execution type.
        - `requestsPerMinute` integer — Maximum number of requests allowed per minute.
        - `maxBurst` integer — Maximum number of concurrent requests allowed in a burst.
        - `remaining` integer — Number of requests remaining in the current rate limit window.
        - `resetAt` string, date-time — ISO 8601 timestamp when the rate limit window resets.
      - `async` RateLimitBucket — Rate limit status for a specific execution type.
        - `requestsPerMinute` integer — Maximum number of requests allowed per minute.
        - `maxBurst` integer — Maximum number of concurrent requests allowed in a burst.
        - `remaining` integer — Number of requests remaining in the current rate limit window.
        - `resetAt` string, date-time — ISO 8601 timestamp when the rate limit window resets.
    - `usage` object — Current billing period usage and plan limits.
      - `currentPeriodCost` number — Total spend in the current billing period in USD.
      - `limit` number — Maximum allowed spend for the current billing period in USD.
      - `plan` string — Your current subscription plan (e.g., free, pro, team).
      - `isExceeded` boolean — Whether the usage limit has been exceeded. Executions may be blocked when true.

## Other responses

- `400` — Invalid request parameters. Check the details array for specific validation errors.
- `401` — Invalid or missing API key. Ensure the X-API-Key header is set with a valid key.
- `404` — The requested resource was not found. Verify the ID is correct and belongs to your workspace.
- `423` — The workflow is locked and cannot be modified.
- `429` — Rate limit exceeded. Wait for the duration specified in the Retry-After header before retrying. The X-RateLimit-* headers accompany every response from an authenticated v1 request — success and error alike — and are omitted only when the request fails authentication, since no rate-limit bucket is consulted in that case.

## Changes

> 14 revisions in range; 1 could not be searched.

- **2026-06-12** `b145ba1c5298` — 1 info
  - endpoint added
- **2026-03-02** `f8d20edc8aab` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/simstudioai/apis/sim-api/changes/api/v1/workflows/:id/deploy/post.md)

---

[API](https://skmtc.dev/simstudioai/apis/sim-api.md) · [All operations](https://skmtc.dev/simstudioai/apis/sim-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/simstudioai/sim-api/revisions/66a471c5b1df/schema)
