---
title: "Deploy call flow version"
method: POST
path: "/api/fabric/resources/call_flow/{id}/versions"
tags: ["Call Flows"]
---

# Deploy call flow version

`POST /api/fabric/resources/call_flow/{id}/versions`

Makes one saved Call Flow version active, selected by document version or version ID. Use it after updating a visual flow when that revision is ready to handle calls; updating the Call Flow saves a revision but does not replace this deployment step. Directly authored [SWML Scripts](/docs/apis/rest/swml-scripts/create-swml-script) do not use Call Flow versions.

#### Permissions

The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_, _Messaging_, _Fax_, or _Video_.

[Learn more about API scopes](/docs/platform/your-signalwire-api-space).

## Path parameters

- `id` string, required

## Request body

- union
  - CallFlowVersionDeployByDocumentVersion
    - `document_version` integer, required — The current revision of the call flow.
  - CallFlowVersionDeployByVersionId
    - `call_flow_version_id` string, uuid, required — Universal Unique Identifier.

## Response `201`

The request has succeeded and a new resource has been created as a result.

- CallFlowVersionDeployResponse
  - `id` string, uuid, required — Universal Unique Identifier.
  - `created_at` string, required — The creation timestamp.
  - `updated_at` string, required — The last update timestamp.
  - `document_version` integer, required — The document version.
  - `flow_data` object — Call Flow Builder state, stored as an opaque JSON object.
  - `relayml` object — The calling SWML document deployed by this version. Uses [calling SWML methods](/docs/swml/reference/calling).

## Other responses

- `401` — Access is unauthorized.
- `404` — The server cannot find the requested resource.
- `422` — The request contains invalid parameters. See errors for details.
- `500` — An internal server error occurred.

## Changes

> 137 revisions in range; 3 could not be searched.

- **2026-08-20** `e79dcc8b2150` — 1 breaking, 2 info
  - the `relayml` response's property type/format changed from ``/`` to `object`/`` for status `201`
  - removed `#/components/schemas/SWML.Calling.SWMLObject` from the `relayml` response property `allOf` list for the response status `201`
  - added 'unevaluatedProperties' constraint to the `relayml` response property for the status `201`
- …earlier changes not shown

[Full history](https://skmtc.dev/signalwire/apis/signalwire-rest-api/changes/api/fabric/resources/call_flow/:id/versions/post.md)

---

[API](https://skmtc.dev/signalwire/apis/signalwire-rest-api.md) · [All operations](https://skmtc.dev/signalwire/apis/signalwire-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/signalwire/signalwire-rest-api/revisions/792d5b8e2970/schema)
