• Backlog
  • Board
  • Epic
  • Issue
  • Sprint
  • Development Information
  • Feature Flags
  • Deployments
  • Builds
  • Security Information
Cloud
Jira Software Cloud / Reference / REST API

Deployments

Postman Collection
OpenAPI
POST

Submit deployment data

Update / insert deployment data.

Deployments are identified by the combination of pipelineId, environmentId and deploymentSequenceNumber, and existing deployment data for the same deployment will be replaced if it exists and the updateSequenceNumber of existing data is less than the incoming data.

Submissions are processed asynchronously. Submitted data will eventually be available in Jira. Most updates are available within a short period of time, but may take some time during peak load and/or maintenance times. The getDeploymentByKey operation can be used to confirm that data has been stored successfully (if needed).

In the case of multiple deployments being submitted in one request, each is validated individually prior to submission. Details of which deployments failed submission (if any) are available in the response object.

Only Connect apps that define the jiraDeploymentInfoProvider module, and on-premise integrations, can access this resource. This resource requires the 'WRITE' scope for Connect apps.

Scopes

Connect app scope requiredWRITE

Request

Header parameters

Authorization

string

Required

Request bodyapplication/json

Deployment data to submit.

properties

Properties

deployments

array<DeploymentData>

Required
providerMetadata

ProviderMetadata

Responses

Submission accepted. Each submitted deployment that is of a valid format will eventually be available in Jira.

Details of which deployments were submitted and which failed submission (due to data format problems etc.) are available in the response object.

application/json

SubmitDeploymentsResponse

The result of a successful submitDeployments request.

POST/rest/deployments/0.1/bulk
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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 curl --request POST \ --url 'https://your-domain.atlassian.com/rest/deployments/0.1/bulk' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "properties": { "accountId": "account-234", "projectId": "project-123" }, "deployments": [ { "deploymentSequenceNumber": 100, "updateSequenceNumber": 1, "issueKeys": [ "ABC-123" ], "associations": [ { "associationType": "issueIdOrKeys", "values": [ "ABC-123", "ABC-456" ] } ], "displayName": "Deployment number 16 of Data Depot", "url": "http://mydeployer.com/project1/1111-222-333/prod-east", "description": "The bits are being transferred", "lastUpdated": "2018-01-20T23:27:25.000Z", "label": "Release 2018-01-20_08-47-bc2421a", "state": "in_progress", "pipeline": { "id": "e9c906a7-451f-4fa6-ae1a-c389e2e2d87c", "displayName": "Data Depot Deployment", "url": "http://mydeployer.com/project1" }, "environment": { "id": "8ec94d72-a4fc-4ac0-b31d-c5a595f373ba", "displayName": "US East", "type": "production" }, "commands": [ { "command": "initiate_deployment_gating" } ], "schemaVersion": "1.0", "triggeredBy": { "email": "jane_doe@atlassian.com" } } ], "providerMetadata": { "product": "Bamboo 6.10.2" } }'
202Response
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 { "acceptedDeployments": [ { "pipelineId": "e9c906a7-451f-4fa6-ae1a-c389e2e2d87c", "environmentId": "8ec94d72-a4fc-4ac0-b31d-c5a595f373ba", "deploymentSequenceNumber": 100 } ], "rejectedDeployments": [ { "key": { "pipelineId": "e9c906a7-451f-4fa6-ae1a-c389e2e2d87c", "environmentId": "8ec94d72-a4fc-4ac0-b31d-c5a595f373ba", "deploymentSequenceNumber": 100 }, "errors": [ { "message": "<string>", "errorTraceId": "<string>" } ] } ], "unknownIssueKeys": [ "ABC-123" ], "unknownAssociations": [ { "associationType": "issueIdOrKeys", "values": [ "ABC-123", "ABC-456" ] } ] }
DEL

Delete deployments by Property

Bulk delete all deployments that match the given request.

One or more query params must be supplied to specify the Properties to delete by. Optional param _updateSequenceNumber is no longer supported. If more than one Property is provided, data will be deleted that matches ALL of the Properties (i.e. treated as AND). See the documentation for the submitDeployments operation for more details.

Example operation: DELETE /bulkByProperties?accountId=account-123&createdBy=user-456

Deletion is performed asynchronously. The getDeploymentByKey operation can be used to confirm that data has been deleted successfully (if needed).

Only Connect apps that define the jiraDeploymentInfoProvider module, and on-premise integrations, can access this resource. This resource requires the 'DELETE' scope for Connect apps.

Scopes

Connect app scope requiredDELETE

Request

Query parameters

_updateSequenceNumber

integer

Header parameters

Authorization

string

Required

Responses

Delete accepted. Data will eventually be removed from Jira.

DEL/rest/deployments/0.1/bulkByProperties
1 2 curl --request DELETE \ --url 'https://your-domain.atlassian.com/rest/deployments/0.1/bulkByProperties'
GET

Get a deployment by key

Retrieve the currently stored deployment data for the given pipelineId, environmentId and deploymentSequenceNumber combination.

The result will be what is currently stored, ignoring any pending updates or deletes.

Only Connect apps that define the jiraDeploymentInfoProvider module, and on-premise integrations, can access this resource. This resource requires the 'READ' scope for Connect apps.

Scopes

Connect app scope requiredREAD

Request

Path parameters

pipelineId

string

Required
environmentId

string

Required
deploymentSequenceNumber

integer

Required

Header parameters

Authorization

string

Required

Responses

The deployment data currently stored for the given ID.

application/json

DeploymentData

Data related to a specific deployment in a specific environment that the deployment is present in. Must specify one of issueKeys or associations.

GET/rest/deployments/0.1/pipelines/{pipelineId}/environments/{environmentId}/deployments/{deploymentSequenceNumber}
1 2 3 curl --request GET \ --url 'https://your-domain.atlassian.com/rest/deployments/0.1/pipelines/{pipelineId}/environments/{environmentId}/deployments/{deploymentSequenceNumber}' \ --header 'Accept: application/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 { "deploymentSequenceNumber": 100, "updateSequenceNumber": 1, "issueKeys": [ "ABC-123" ], "associations": [ { "associationType": "issueIdOrKeys", "values": [ "ABC-123", "ABC-456" ] } ], "displayName": "Deployment number 16 of Data Depot", "url": "http://mydeployer.com/project1/1111-222-333/prod-east", "description": "The bits are being transferred", "lastUpdated": "2018-01-20T23:27:25.000Z", "label": "Release 2018-01-20_08-47-bc2421a", "state": "in_progress", "pipeline": { "id": "e9c906a7-451f-4fa6-ae1a-c389e2e2d87c", "displayName": "Data Depot Deployment", "url": "http://mydeployer.com/project1" }, "environment": { "id": "8ec94d72-a4fc-4ac0-b31d-c5a595f373ba", "displayName": "US East", "type": "production" }, "commands": [ { "command": "initiate_deployment_gating" } ], "schemaVersion": "1.0" }
DEL

Delete a deployment by key

Delete the currently stored deployment data for the given pipelineId, environmentId and deploymentSequenceNumber combination.

Deletion is performed asynchronously. The getDeploymentByKey operation can be used to confirm that data has been deleted successfully (if needed).

Only Connect apps that define the jiraDeploymentInfoProvider module, and on-premise integrations, can access this resource. This resource requires the 'DELETE' scope for Connect apps.

Scopes

Connect app scope requiredDELETE

Request

Path parameters

pipelineId

string

Required
environmentId

string

Required
deploymentSequenceNumber

integer

Required

Query parameters

_updateSequenceNumber

integer

Header parameters

Authorization

string

Required

Responses

Delete has been accepted. Data will eventually be removed from Jira if it exists.

DEL/rest/deployments/0.1/pipelines/{pipelineId}/environments/{environmentId}/deployments/{deploymentSequenceNumber}
1 2 curl --request DELETE \ --url 'https://your-domain.atlassian.com/rest/deployments/0.1/pipelines/{pipelineId}/environments/{environmentId}/deployments/{deploymentSequenceNumber}'
GET

Get deployment gating status by key

Retrieve the Deployment gating status for the given pipelineId + environmentId + deploymentSequenceNumber combination. Only apps that define the jiraDeploymentInfoProvider module can access this resource. This resource requires the 'READ' scope.

Scopes

Connect app scope requiredREAD

Request

Path parameters

pipelineId

string

Required
environmentId

string

Required
deploymentSequenceNumber

integer

Required

Responses

The current gating status for the given Deployment

application/json

SubmitDeploymentsResponse

The current gating status for the given Deployment.

GET/rest/deployments/0.1/pipelines/{pipelineId}/environments/{environmentId}/deployments/{deploymentSequenceNumber}/gating-status
1 2 3 curl --request GET \ --url 'https://your-domain.atlassian.com/rest/deployments/0.1/pipelines/{pipelineId}/environments/{environmentId}/deployments/{deploymentSequenceNumber}/gating-status' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "deploymentSequenceNumber": 100, "pipelineId": "e9c906a7-451f-4fa6-ae1a-c389e2e2d87c", "environmentId": "8ec94d72-a4fc-4ac0-b31d-c5a595f373ba", "updatedTimestamp": "2020-08-25T06:04:50.239Z", "gatingStatus": "allowed", "details": [ { "type": "issue", "issueKey": "ABC-123", "issueLink": "https://your-domain.atlassian.net/servicedesk/customer/portal/1/ZAINA-123" } ] }