Atlassian Jira Workflow Scheme API
The Atlassian Jira Workflow Scheme API enables managing workflow schemes and mapping workflows to issue types.
The Atlassian Jira Workflow Scheme API enables managing workflow schemes and mapping workflows to issue types.
components:
schemas:
ContainerOfWorkflowSchemeAssociations:
additionalProperties: false
description: >-
A container for a list of workflow schemes together with the projects
they are associated with.
properties:
values:
description: >-
A list of workflow schemes together with projects they are
associated with.
items:
$ref: '#/components/schemas/WorkflowSchemeAssociations'
type: array
required:
- values
type: object
WorkflowSchemeUpdateRequiredMappingsResponse:
additionalProperties: false
properties:
statusMappingsByIssueTypes:
description: The list of required status mappings by issue type.
items:
$ref: '#/components/schemas/RequiredMappingByIssueType'
type: array
uniqueItems: true
statusMappingsByWorkflows:
description: The list of required status mappings by workflow.
items:
$ref: '#/components/schemas/RequiredMappingByWorkflows'
type: array
uniqueItems: true
statuses:
description: The details of the statuses in the associated workflows.
items:
$ref: '#/components/schemas/StatusMetadata'
type: array
uniqueItems: true
statusesPerWorkflow:
description: The statuses associated with each workflow.
items:
$ref: '#/components/schemas/StatusesPerWorkflow'
type: array
uniqueItems: true
type: object
WorkflowScheme:
additionalProperties: false
description: Details about a workflow scheme.
properties:
defaultWorkflow:
description: >-
The name of the default workflow for the workflow scheme. The
default workflow has *All Unassigned Issue Types* assigned to it in
Jira. If `defaultWorkflow` is not specified when creating a workflow
scheme, it is set to *Jira Workflow (jira)*.
type: string
description:
description: The description of the workflow scheme.
type: string
draft:
description: Whether the workflow scheme is a draft or not.
readOnly: true
type: boolean
id:
description: The ID of the workflow scheme.
format: int64
readOnly: true
type: integer
issueTypeMappings:
additionalProperties:
type: string
description: >-
The issue type to workflow mappings, where each mapping is an issue
type ID and workflow name pair. Note that an issue type can only be
mapped to one workflow in a workflow scheme.
type: object
issueTypes:
additionalProperties:
$ref: '#/components/schemas/IssueTypeDetails'
description: The issue types available in Jira.
readOnly: true
type: object
lastModified:
description: >-
The date-time that the draft workflow scheme was last modified. A
modification is a change to the issue type-project mappings only.
This property does not apply to non-draft workflows.
readOnly: true
type: string
lastModifiedUser:
allOf:
- $ref: '#/components/schemas/User'
description: >-
The user that last modified the draft workflow scheme. A
modification is a change to the issue type-project mappings only.
This property does not apply to non-draft workflows.
readOnly: true
name:
description: >-
The name of the workflow scheme. The name must be unique. The
maximum length is 255 characters. Required when creating a workflow
scheme.
type: string
originalDefaultWorkflow:
description: >-
For draft workflow schemes, this property is the name of the default
workflow for the original workflow scheme. The default workflow has
*All Unassigned Issue Types* assigned to it in Jira.
readOnly: true
type: string
originalIssueTypeMappings:
additionalProperties:
readOnly: true
type: string
description: >-
For draft workflow schemes, this property is the issue type to
workflow mappings for the original workflow scheme, where each
mapping is an issue type ID and workflow name pair. Note that an
issue type can only be mapped to one workflow in a workflow scheme.
readOnly: true
type: object
self:
format: uri
readOnly: true
type: string
updateDraftIfNeeded:
description: >-
Whether to create or update a draft workflow scheme when updating an
active workflow scheme. An active workflow scheme is a workflow
scheme that is used by at least one project. The following examples
show how this property works:
* Update an active workflow scheme with `updateDraftIfNeeded` set to `true`: If a draft workflow scheme exists, it is updated. Otherwise, a draft workflow scheme is created.
* Update an active workflow scheme with `updateDraftIfNeeded` set to `false`: An error is returned, as active workflow schemes cannot be updated.
* Update an inactive workflow scheme with `updateDraftIfNeeded` set to `true`: The workflow scheme is updated, as inactive workflow schemes do not require drafts to update.
Defaults to `false`.
type: boolean
type: object
DefaultWorkflow:
additionalProperties: false
description: Details about the default workflow.
properties:
updateDraftIfNeeded:
description: >-
Whether a draft workflow scheme is created or updated when updating
an active workflow scheme. The draft is updated with the new default
workflow. Defaults to `false`.
type: boolean
workflow:
description: The name of the workflow to set as the default workflow.
type: string
required:
- workflow
type: object
IssueTypeWorkflowMapping:
additionalProperties: false
description: Details about the mapping between an issue type and a workflow.
properties:
issueType:
description: >-
The ID of the issue type. Not required if updating the issue
type-workflow mapping.
type: string
updateDraftIfNeeded:
description: >-
Set to true to create or update the draft of a workflow scheme and
update the mapping in the draft, when the workflow scheme cannot be
edited. Defaults to `false`. Only applicable when updating the
workflow-issue types mapping.
type: boolean
workflow:
description: The name of the workflow.
type: string
type: object
IssueTypesWorkflowMapping:
additionalProperties: false
description: Details about the mapping between issue types and a workflow.
properties:
defaultMapping:
description: >-
Whether the workflow is the default workflow for the workflow
scheme.
type: boolean
issueTypes:
description: The list of issue type IDs.
items:
type: string
type: array
updateDraftIfNeeded:
description: >-
Whether a draft workflow scheme is created or updated when updating
an active workflow scheme. The draft is updated with the new
workflow-issue types mapping. Defaults to `false`.
type: boolean
workflow:
description: >-
The name of the workflow. Optional if updating the workflow-issue
types mapping.
type: string
type: object
externalDocs:
description: Find out more about Atlassian products and services.
url: http://www.atlassian.com
info:
contact:
email: [email protected]
description: Needs description.
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
termsOfService: http://atlassian.com/terms/
title: 'Atlassian rest/api/3/workflowscheme/'
version: 1001.0.0-SNAPSHOT-67b5c6e5f3598d7ec1649016d026468ab2838a77
openapi: 3.0.1
paths:
/rest/api/3/workflowscheme/project:
get:
deprecated: false
description: >-
Returns a list of the workflow schemes associated with a list of
projects. Each returned workflow scheme includes a list of the requested
projects associated with it. Any team-managed or non-existent projects
in the request are ignored and no errors are returned.<br><br>If the
project is associated with the `Default Workflow Scheme` no ID is
returned. This is because the way the `Default Workflow Scheme` is
stored means it has no ID.<br><br>**[Permissions](#permissions)
required:** *Administer Jira* [global
permission](https://confluence.atlassian.com/x/x4dKLg).
operationId: atlassianGetworkflowschemeprojectassociations
parameters:
- description: >-
The ID of a project to return the workflow schemes for. To include
multiple projects, provide an ampersand-Jim: oneseparated list. For
example, `projectId=10000&projectId=10001`.
in: query
name: projectId
required: true
schema:
items:
example: 10010
format: int64
type: integer
maxItems: 100
minItems: 1
type: array
uniqueItems: true
responses:
'200':
content:
application/json:
example: >-
{"values":[{"projectIds":["10010","10020"],"workflowScheme":{"defaultWorkflow":"jira","description":"The
description of the example workflow
scheme.","id":101010,"issueTypeMappings":{"10000":"scrum
workflow","10001":"builds workflow"},"name":"Example workflow
scheme","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}}]}
schema:
$ref: '#/components/schemas/ContainerOfWorkflowSchemeAssociations'
description: Returned if the request is successful.
'400':
content:
application/json:
example: >-
{"errorMessages":[],"errors":{"projectId":"The ID of a project
has to be provided."}}
description: Returned if the request is invalid.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
content:
application/json:
example: >-
{"errorMessages":["Only Jira administrators can access workflow
scheme associations."],"errors":{}}
description: Returned if the user does not have the necessary permission.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Get Workflow Scheme Project Associations
tags:
- Workflow Scheme Project Associations
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- read:workflow-scheme:jira
- read:workflow:jira
- read:application-role:jira
- read:avatar:jira
- read:group:jira
- read:issue-type:jira
- read:project-category:jira
- read:project:jira
- read:user:jira
state: Beta
x-atlassian-connect-scope: ADMIN
put:
deprecated: false
description: >-
Assigns a workflow scheme to a project. This operation is performed only
when there are no issues in the project.<br><br>Workflow schemes can
only be assigned to classic
projects.<br><br>**[Permissions](#permissions) required:** *Administer
Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).
operationId: atlassianAssignschemetoproject
parameters: []
requestBody:
content:
application/json:
example:
projectId: '10001'
workflowSchemeId: '10032'
schema:
$ref: '#/components/schemas/WorkflowSchemeProjectAssociation'
required: true
responses:
'204':
content:
application/json:
schema: {}
description: Returned if the request is successful.
'400':
content:
application/json:
example: >-
{"errorMessages":["Only classic projects can have workflow
schemes assigned."],"errors":{}}
description: Returned if the request is not valid.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
content:
application/json:
example: >-
{"errorMessages":["Only Jira administrators can access workflow
scheme associations."],"errors":{}}
description: Returned if the user does not have the required permissions.
'404':
content:
application/json:
example: >-
{"errorMessages":["The workflow scheme was not
found."],"errors":{}}
description: Returned if the workflow scheme or the project are not found.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Assign Workflow Scheme To Project
tags:
- Workflow Scheme Project Associations
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- write:workflow-scheme:jira
state: Beta
x-atlassian-connect-scope: ADMIN
/rest/api/3/workflowscheme/read:
post:
deprecated: false
description: >-
Returns a list of workflow schemes by providing workflow scheme IDs or
project IDs.<br><br>**[Permissions](#permissions) required:**<br><br> * *Administer Jira* global permission to access all, including
project-scoped, workflow schemes<br> * *Administer projects* project
permissions to access project-scoped workflow schemes
operationId: atlassianReadworkflowschemes
parameters:
- description: >-
Use [expand](#expansion) to include additional information in the
response. This parameter accepts a comma-separated list. Expand
options include:
* `workflows.usages` Returns the project and issue types that each workflow in the workflow scheme is associated with.
in: query
name: expand
schema:
type: string
requestBody:
content:
application/json:
example:
projectIds:
- '10047'
- '10048'
workflowSchemeIds:
- 3e59db0f-ed6c-47ce-8d50-80c0c4572677
schema:
$ref: '#/components/schemas/WorkflowSchemeReadRequest'
required: true
responses:
'200':
content:
application/json:
example: >-
[{"defaultWorkflow":{"description":"This is the default workflow
for Software Development
projects.","id":"3e59db0f-ed6c-47ce-8d50-80c0c4572677","name":"Default
Software Development
Workflow","usage":[{"issueTypeIds":[],"projectId":"10047"}],"version":{"id":"657812fc-bc72-400f-aae0-df8d88db3d9g","versionNumber":1}},"description":"This
is the workflow scheme for the Software Development project
type.","id":"3g78dg2a-ns2n-56ab-9812-42h5j1464567","name":"Software
Developer Workflow
Scheme","projectIdsUsingScheme":["10047"],"scope":{"project":{"id":"10047"},"type":"GLOBAL"},"taskId":"3f83dg2a-ns2n-56ab-9812-42h5j1461629","version":{"id":"527213fc-bc72-400f-aae0-df8d88db2c8a","versionNumber":1},"workflowsForIssueTypes":[{"issueTypeIds":["10013"],"workflow":{"description":"This
is the workflow for the Software Development bug issue
type.","id":"5e79ae0f-ed6c-47ce-8d50-80c0c4572745","name":"Software
Development Bug
Workflow","usage":[{"issueTypeIds":["10013"],"projectId":"10047"}],"version":{"id":"897812dc-bc72-400f-aae0-df8d88fe3d8f","versionNumber":1}}}]}]
schema:
items:
$ref: '#/components/schemas/WorkflowSchemeReadResponse'
type: array
description: Returned if the request is successful.
'400':
description: Returned if the request is not valid.
'401':
description: >-
Returned if the authentication credentials are incorrect or missing,
or the caller doesn't have permissions to perform the operation.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Bulk Get Workflow Schemes
tags:
- Workflow Schemes
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- read:workflow-scheme:jira
state: Beta
x-experimental: true
x-atlassian-connect-scope: ADMIN
/rest/api/3/workflowscheme/update:
post:
deprecated: false
description: >-
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.<br><br>**[Permissions](#permissions)
required:**<br><br> * *Administer Jira* project permission to update
all, including global-scoped, workflow schemes.<br> * *Administer
projects* project permission to update project-scoped workflow schemes.
operationId: atlassianUpdateschemes
parameters: []
requestBody:
content:
application/json:
example:
defaultWorkflowId: 3e59db0f-ed6c-47ce-8d50-80c0c4572677
description: description
id: '10000'
name: name
statusMappingsByIssueTypeOverride:
- issueTypeId: '10001'
statusMappings:
- newStatusId: '2'
oldStatusId: '1'
- newStatusId: '4'
oldStatusId: '3'
- issueTypeId: '10002'
statusMappings:
- newStatusId: '4'
oldStatusId: '1'
- newStatusId: '2'
oldStatusId: '3'
statusMappingsByWorkflows:
- newWorkflowId: 3e59db0f-ed6c-47ce-8d50-80c0c4572677
oldWorkflowId: 3e59db0f-ed6c-47ce-8d50-80c0c4572677
statusMappings:
- newStatusId: '2'
oldStatusId: '1'
- newStatusId: '4'
oldStatusId: '3'
version:
id: 527213fc-bc72-400f-aae0-df8d88db2c8a
versionNumber: 1
workflowsForIssueTypes:
- issueTypeIds:
- '10000'
- '10003'
workflowId: 3e59db0f-ed6c-47ce-8d50-80c0c4572677
- issueTypeIds:
- 10001`
- '10002'
workflowId: 3f83dg2a-ns2n-56ab-9812-42h5j1461629
schema:
$ref: '#/components/schemas/WorkflowSchemeUpdateRequest'
required: true
responses:
'200':
content:
application/json:
schema: {}
description: >-
Returned if the request is successful and there is no asynchronous
task.
'303':
content:
application/json:
schema:
$ref: '#/components/schemas/TaskProgressBeanObject'
description: >-
Returned if the request is successful and there is an asynchronous
task for the migrations.
'400':
description: Returned if the request is not valid.
'401':
description: >-
Returned if the authentication credentials are incorrect or missing,
or the caller doesn't have permissions to perform the operation.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Update Workflow Scheme
tags:
- Workflow Schemes
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- write:workflow-scheme:jira
state: Beta
x-experimental: true
x-atlassian-connect-scope: ADMIN
/rest/api/3/workflowscheme/update/mappings:
post:
deprecated: false
description: >-
Gets the required status mappings for the desired changes to a workflow
scheme. The results are provided per issue type and workflow. When
updating a workflow scheme, status mappings can be provided per issue
type, per workflow, or both.<br><br>**[Permissions](#permissions)
required:**<br><br> * *Administer Jira* permission to update all,
including global-scoped, workflow schemes.<br> * *Administer projects*
project permission to update project-scoped workflow schemes.
operationId: atlassianUpdateworkflowschememappings
parameters: []
requestBody:
content:
application/json:
example:
defaultWorkflowId: '10010'
id: '10001'
workflowsForIssueTypes:
- issueTypeIds:
- '10010'
- '10011'
workflowId: '10001'
schema:
$ref: '#/components/schemas/WorkflowSchemeUpdateRequiredMappingsRequest'
required: true
responses:
'200':
content:
application/json:
example: >-
{"statusMappingsByIssueTypes":[{"issueTypeId":"10000","statusIds":["10000","10001"]}],"statusMappingsByWorkflows":[{"sourceWorkflowId":"10000","statusIds":["10000","10001"],"targetWorkflowId":"10001"}],"statuses":[{"category":"TODO","id":"10000","name":"To
Do"}],"statusesPerWorkflow":[{"initialStatusId":"10000","statuses":["10000","10001"],"workflowId":"10000"}]}
schema:
$ref: >-
#/components/schemas/WorkflowSchemeUpdateRequiredMappingsResponse
description: Returned if the request is successful.
'400':
description: Returned if the request is not valid.
'401':
description: >-
Returned if the authentication credentials are incorrect or missing,
or the caller doesn't have permissions to perform the operation.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Get Required Status Mappings For Workflow Scheme Update
tags:
- Workflow Schemes
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- write:workflow-scheme:jira
state: Beta
x-experimental: true
x-atlassian-connect-scope: ADMIN
/rest/api/3/workflowscheme/{id}:
delete:
deprecated: false
description: >-
Deletes a workflow scheme. Note that a workflow scheme cannot be deleted
if it is active (that is, being used by at least one
project).<br><br>**[Permissions](#permissions) required:** *Administer
Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).
operationId: atlassianDeleteworkflowscheme
parameters:
- description: >-
The ID of the workflow scheme. Find this ID by editing the desired
workflow scheme in Jira. The ID is shown in the URL as `schemeId`.
For example, *schemeId=10301*.
in: path
name: id
required: true
schema:
format: int64
type: integer
responses:
'204':
content:
application/json:
schema: {}
description: Returned if the request is successful.
'400':
description: Returned if the scheme is active.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the user does not have the necessary permission.
'404':
description: Returned if the workflow scheme is not found.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Delete Workflow Scheme
tags:
- Workflow Schemes
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- delete:workflow-scheme:jira
state: Beta
x-atlassian-connect-scope: ADMIN
get:
deprecated: false
description: >-
Returns a workflow scheme.<br><br>**[Permissions](#permissions)
required:** *Administer Jira* [global
permission](https://confluence.atlassian.com/x/x4dKLg).
operationId: atlassianGetworkflowscheme
parameters:
- description: >-
The ID of the workflow scheme. Find this ID by editing the desired
workflow scheme in Jira. The ID is shown in the URL as `schemeId`.
For example, *schemeId=10301*.
in: path
name: id
required: true
schema:
format: int64
type: integer
- description: >-
Returns the workflow scheme's draft rather than scheme itself, if
set to true. If the workflow scheme does not have a draft, then the
workflow scheme is returned.
in: query
name: returnDraftIfExists
schema:
default: false
type: boolean
responses:
'200':
content:
application/json:
example: >-
{"defaultWorkflow":"jira","description":"The description of the
example workflow
scheme.","draft":false,"id":101010,"issueTypeMappings":{"10000":"scrum
workflow","10001":"builds workflow"},"name":"Example workflow
scheme","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}
schema:
$ref: '#/components/schemas/WorkflowScheme'
description: Returned if the request is successful.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the user does not have the necessary permission.
'404':
description: Returned if the workflow scheme is not found.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Get Workflow Scheme
tags:
- Workflow Schemes
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- read:workflow-scheme:jira
- read:application-role:jira
- read:avatar:jira
- read:group:jira
- read:issue-type:jira
- read:project-category:jira
- read:project:jira
- read:user:jira
state: Beta
x-atlassian-connect-scope: ADMIN
put:
deprecated: false
description: >-
Updates a company-manged project workflow scheme, including the name,
default workflow, issue type to project mappings, and more. If the
workflow scheme is active (that is, being used by at least one project),
then a draft workflow scheme is created or updated instead, provided
that `updateDraftIfNeeded` is set to
`true`.<br><br>**[Permissions](#permissions) required:** *Administer
Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).
operationId: atlassianUpdateworkflowscheme
parameters:
- description: >-
The ID of the workflow scheme. Find this ID by editing the desired
workflow scheme in Jira. The ID is shown in the URL as `schemeId`.
For example, *schemeId=10301*.
in: path
name: id
required: true
schema:
format: int64
type: integer
requestBody:
content:
application/json:
example:
defaultWorkflow: jira
description: The description of the example workflow scheme.
issueTypeMappings:
'10000': scrum workflow
name: Example workflow scheme
updateDraftIfNeeded: false
schema:
$ref: '#/components/schemas/WorkflowScheme'
required: true
responses:
'200':
content:
application/json:
example: >-
{"defaultWorkflow":"jira","description":"The description of the
example workflow
scheme.","draft":false,"id":101010,"issueTypeMappings":{"10000":"scrum
workflow","10001":"builds workflow"},"name":"Example workflow
scheme","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}
schema:
$ref: '#/components/schemas/WorkflowScheme'
description: Returned if the request is successful.
'400':
description: Returned if the request is invalid.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the user does not have the necessary permission.
'404':
description: Returned if the workflow scheme is not found.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Classic Update Workflow Scheme
tags:
- Workflow Schemes
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- read:workflow-scheme:jira
- write:workflow-scheme:jira
- read:application-role:jira
- read:avatar:jira
- read:group:jira
# --- truncated at 32 KB (116 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/openapi/atlassian-rest-api-3-workflowscheme--openapi-original.yml