GET

Bulk get statuses

Returns a list of the statuses specified by one or more status IDs.

Permissions required:

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-configuration
Granular:read:workflow:jira

Connect app scope requiredREAD

Request

Query parameters

expand

string

id

array<string>

Required

Responses

Returned if the request is successful.

application/json

array<JiraStatus>

GET/rest/api/3/statuses
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/statuses?id={id}`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 [ { "description": "The issue is resolved", "id": "1000", "name": "Finished", "scope": { "project": { "id": "1" }, "type": "PROJECT" }, "statusCategory": "DONE", "usages": [ { "issueTypes": [ "10002" ], "project": { "id": "1" } } ], "workflowUsages": [ { "workflowId": "545d80a3-91ff-4949-8b0d-a2bc484e70e5", "workflowName": "Workflow 1" } ] } ]
PUT

Bulk update statuses

Updates statuses by ID.

Permissions required:

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-configuration
Granular:write:workflow:jira

Connect app scope requiredADMIN

Request

Request bodyapplication/json

The list of statuses that will be updated.

statuses

array<StatusUpdate>

Required

Responses

Returned if the request is successful.

application/json

any

PUT/rest/api/3/statuses
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; var bodyData = `{ "statuses": [ { "description": "The issue is resolved", "id": "1000", "name": "Finished", "statusCategory": "DONE" } ] }`; const response = await api.asUser().requestJira(route`/rest/api/3/statuses`, { method: 'PUT', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: bodyData }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
POST

Bulk create statuses

Creates statuses for a global or project scope.

Permissions required:

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-configuration
Granular:write:workflow:jira

Connect app scope requiredADMIN

Request

Request bodyapplication/json

Details of the statuses being created and their scope.

scope

StatusScope

Required
statuses

array<StatusCreate>

Required

Responses

Returned if the request is successful.

application/json

array<JiraStatus>

POST/rest/api/3/statuses
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; var bodyData = `{ "scope": { "project": { "id": "1" }, "type": "PROJECT" }, "statuses": [ { "description": "The issue is resolved", "name": "Finished", "statusCategory": "DONE" } ] }`; const response = await api.asUser().requestJira(route`/rest/api/3/statuses`, { method: 'POST', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: bodyData }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [ { "description": "The issue is resolved", "id": "1000", "name": "Finished", "scope": { "project": { "id": "1" }, "type": "PROJECT" }, "statusCategory": "DONE", "usages": [], "workflowUsages": [] } ]
DEL

Bulk delete Statuses

Deletes statuses by ID.

Permissions required:

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-configuration
Granular:write:workflow:jira

Connect app scope requiredADMIN

Request

Query parameters

id

array<string>

Required

Responses

Returned if the request is successful.

application/json

any

DEL/rest/api/3/statuses
1 2 3 4 5 6 7 8 9 10 11 12 13 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/statuses?id={id}`, { method: 'DELETE', headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
GET

Search statuses paginated

Returns a paginated list of statuses that match a search on name or project.

Permissions required:

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-configuration
Granular:read:workflow:jira

Connect app scope requiredREAD

Request

Query parameters

expand

string

projectId

string

startAt

integer

maxResults

integer

searchString

string

statusCategory

string

Responses

Returned if the request is successful.

application/json

PageOfStatuses
GET/rest/api/3/statuses/search
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/statuses/search`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 { "isLast": true, "maxResults": 2, "nextPage": "https://your-domain.atlassian.net/rest/api/3/statuses/search?startAt=2&maxResults=2", "self": "https://your-domain.atlassian.net/rest/api/3/statuses/search?startAt=0&maxResults=2", "startAt": 0, "total": 5, "values": [ { "description": "The issue is resolved", "id": "1000", "name": "Finished", "scope": { "project": { "id": "1" }, "type": "PROJECT" }, "statusCategory": "DONE", "usages": [ { "issueTypes": [ "10002" ], "project": { "id": "1" } } ], "workflowUsages": [ { "workflowId": "545d80a3-91ff-4949-8b0d-a2bc484e70e5", "workflowName": "Workflow 1" } ] } ] }
GET

Get issue type usages by status and projectExperimental

Returns a page of issue types in a project using a given status.

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-configuration
Granular:read:project:jira, read:status:jira, read:issue-type:jira

Connect app scope requiredREAD

Request

Path parameters

statusId

string

Required
projectId

string

Required

Query parameters

nextPageToken

string

maxResults

integer

Responses

Returned if the request is successful.

application/json

StatusProjectIssueTypeUsageDTO

The issue types using this status in a project.

GET/rest/api/3/statuses/{statusId}/project/{projectId}/issueTypeUsages
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/statuses/{statusId}/project/{projectId}/issueTypeUsages`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 12 { "issueTypes": { "nextPageToken": "eyJvIjoyfQ==", "values": [ { "id": "1000" } ] }, "projectId": "2000", "statusId": "1000" }
GET

Get project usages by statusExperimental

Returns a page of projects using a given status.

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-configuration
Granular:read:project:jira, read:status:jira

Connect app scope requiredREAD

Request

Path parameters

statusId

string

Required

Query parameters

nextPageToken

string

maxResults

integer

Responses

Returned if the request is successful.

application/json

StatusProjectUsageDTO

The projects using this status.

GET/rest/api/3/statuses/{statusId}/projectUsages
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/statuses/{statusId}/projectUsages`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 { "projects": { "nextPageToken": "eyJvIjoyfQ==", "values": [ { "id": "1000" } ] }, "statusId": "1000" }
GET

Get workflow usages by statusExperimental

Returns a page of workflows using a given status.

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-configuration
Granular:read:workflow:jira, read:status:jira

Connect app scope requiredREAD

Request

Path parameters

statusId

string

Required

Query parameters

nextPageToken

string

maxResults

integer

Responses

Returned if the request is successful.

application/json

StatusWorkflowUsageDTO

Workflows using the status.

GET/rest/api/3/statuses/{statusId}/workflowUsages
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/statuses/{statusId}/workflowUsages`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 { "statusId": "1000", "workflows": { "nextPageToken": "eyJvIjoyfQ==", "values": [ { "id": "545d80a3-91ff-4949-8b0d-a2bc484e70e5" } ] } }

Rate this page: