---
title: "Update workflow scheme"
method: POST
path: "/rest/api/3/workflowscheme/update"
tags: ["Workflow schemes"]
---

# Update workflow scheme

`POST /rest/api/3/workflowscheme/update`

Updates company-managed and team-managed project workflow schemes. This API doesn't have a concept of draft, so any changes made to a workflow scheme are immediately available. When changing the available statuses for issue types, an [asynchronous task](#async) migrates the issues as defined in the provided mappings.

**[Permissions](#permissions) required:**

 *  *Administer Jira* project permission to update all, including global-scoped, workflow schemes.
 *  *Administer projects* project permission to update project-scoped workflow schemes.

## Request body

- WorkflowSchemeUpdateRequest — The update workflow scheme payload.
  - `defaultWorkflowId` string — The ID of the workflow for issue types without having a mapping defined in this workflow scheme. Only used in global-scoped workflow schemes. If the `defaultWorkflowId` isn't specified, this is set to *Jira Workflow (jira)*.
  - `description` string, required — The new description for this workflow scheme.
  - `id` string, required — The ID of this workflow scheme.
  - `name` string, required — The new name for this workflow scheme.
  - `statusMappingsByIssueTypeOverride` MappingsByIssueTypeOverride[] — Overrides, for the selected issue types, any status mappings provided in `statusMappingsByWorkflows`. Status mappings are required when the new workflow for an issue type doesn't contain all statuses that the old workflow has. Status mappings can be provided by a combination of `statusMappingsByWorkflows` and `statusMappingsByIssueTypeOverride`.
    - `issueTypeId` string
    - `statusMappings` WorkflowAssociationStatusMapping[]
      - `newStatusId` string
      - `oldStatusId` string
  - `statusMappingsByWorkflows` MappingsByWorkflow[] — The status mappings by workflows. Status mappings are required when the new workflow for an issue type doesn't contain all statuses that the old workflow has. Status mappings can be provided by a combination of `statusMappingsByWorkflows` and `statusMappingsByIssueTypeOverride`.
    - `newWorkflowId` string, required — The ID of the new workflow.
    - `oldWorkflowId` string, required — The ID of the old workflow.
    - `statusMappings` WorkflowAssociationStatusMapping[], required — The list of status mappings.
      - `newStatusId` string
      - `oldStatusId` string
  - `version` DocumentVersion, required — The current version details of this workflow scheme.
    - `id` string — The version UUID.
    - `versionNumber` integer — The version number.
  - `workflowsForIssueTypes` WorkflowSchemeAssociation[] — Mappings from workflows to issue types.
    - `issueTypeIds` string[], required — The issue types assigned to the workflow.
    - `workflowId` string, required — The ID of the workflow.

## Response `200`

Returned if the request is successful and there is no asynchronous task.

- unknown

## Other responses

- `303` — Returned if the request is successful and there is an asynchronous task for the migrations.
- `400` — Returned if the request is not valid.
- `401` — Returned if the authentication credentials are incorrect or missing, or the caller doesn't have permissions to perform the operation.
- `409` — Returned if another workflow configuration update task is ongoing.

---

[API](https://skmtc.net/atlassian/apis/the-jira-cloud-platform-rest-api-2.md) · [All operations](https://skmtc.net/atlassian/apis/the-jira-cloud-platform-rest-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/atlassian/the-jira-cloud-platform-rest-api-2/versions/ec7f275dfee5/schema)
