Bamboo REST API documentation

The Bamboo REST APIs are for developers who want to integrate their application with Bamboo and for administrators who want to script interactions with the Bamboo server.

Introduction to Bamboo's REST APIs

Bamboo's REST APIs provide access to resources (data entities) via URI paths. To use a REST API, your application will make an HTTP request and parse the response. By default, the response format is XML. If you wish, you can request JSON instead of XML.

Because the REST API is based on open standards, you can use any web development language to access the API.

A common use case would be a build service, which provides information about build results.

Bamboo's REST APIs provide the following capabilities:

Getting Started

If you would like to know more about REST in general, start with the RESTwiki's guide to REST In Plain English.

Then jump right in and try our REST resources:

Advanced Topics

Below are some links to in-depth information on development of REST APIs and plugins:

How to use expansion in the REST APIs

In order to be minimise network traffic from the client perspective, our API uses a technique called expansion.

You can use the 'expand' query parameter to specify a comma-separated list of entities that you want expanded, identifying each entity by a given identifier. For example, the value "changes,stages.stage.results.result" requests the expansion of entities for which the expand identifier is "change" and "stages".

To discover the identifiers for each entity, look at the 'expand' attribute in the parent entity. In the XML example below, the page entity declares changes, metadata, artifacts, comments, labels, jiraIssues and stages as being expandable.

Note: The 'expand' attribute should not be confused with the 'expand' query parameter which specifies which entities you want expanded.

You can use the dot notation to specify expansion of entities within another entity. For example "children.children" would expand the children and the children's children (because its expand identifier is children) and the child entities within the plugin.

If not otherwise indicated, all methods return both XML and JSON. Below are examples of the XML and JSON representations.

XML representation:

[expand]
<result id="2818060" expand="changes,testResults, metadata, logEntries,artifacts,comments, labels,jiraIssues" number="11"> lifeCycleState="Finished" state="Successful"  key="PROJECTKEY-PLANKEY-JOB1-11"

<link rel="self" href="http://localhost:8085/bamboo/rest/api/latest/result/PROJECTKEY-PLANKEY-JOB1-11"/>

<parent rel="parent" href="http://localhost:8085/bamboo/rest/api/latest/result/PROJECTKEY-PLANKEY-11"/>

<planName>My plan</planName>

<projectName>My project</projectName>

<stage>Default Stage</stage>

</result>

The same content in JSON:
[expand]
{id:"2818060",
expand:"changes,testResults, metadata, logEntries,artifacts,comments, labels,jiraIssues",
number:"11"
lifeCycleState:"Finished"
state:"Successful"
key:"PROJECT_KEY-PLANKEY-JOB1-11"
link:[{href:"http://localhost:8085/bamboo/rest/api/latest/result/PROJECTKEY-PLANKEY-JOB1-11",rel:"self"}],
parent:[{href:"http://localhost:8085/bamboo/rest/api/latest/result/PROJECTKEY-PLANKEY-11",rel:"parent"}],
planName:"My plan",
projectName:"My project",
stage:"Default Stage}}

Resources List

This document the current REST API provided by Bamboo.

Resources

/plan/favicon

Methods

/plan/favicon/{planKey}

resource-wide template parameters
parameter value description

planKey

string

Methods

GET

available response representations:

/elasticConfiguration

Methods

GET

available response representations:

POST

acceptable request representations:

available response representations:

/elasticConfiguration/{configurationId}

resource-wide template parameters
parameter value description

configurationId

long

Methods

GET

available response representations:

PUT

acceptable request representations:

available response representations:

DELETE

available response representations:

/elasticConfiguration/configuration-name/{configurationName}

resource-wide template parameters
parameter value description

configurationName

string

Methods

GET

available response representations:

PUT

acceptable request representations:

available response representations:

DELETE

available response representations:

/elasticConfiguration/image-id/{imageId}?newImageId

resource-wide template parameters
parameter value description

imageId

string

Methods

PUT

request query parameters
parameter value description

newImageId

string

available response representations:

/reindex?indexer

REST resource for starting/stopping/querying indexing.

Methods

POST

Kicks off a reindex. Requires system admin permissions to perform this reindex.

request query parameters
parameter value description

indexer

string

available response representations:

  • 202 - application/json [expand]

    Returns status of the current indexing operation

GET

Returns status of the current indexing operation. reindexInProgress - reindex is currently performed in background reindexPending - reindex is required (i.e. it failed before or some upgrade task asked for it)

available response representations:

  • 200 - application/json [expand]

    Returns status of the current indexing operation

/chart

Methods

GET

available response representations:

/chart/reports

Methods

GET

available response representations:

/chart/planSummary

Methods

GET

available response representations:

/capability

Methods

/capability/groupedListing?searchTerm&lastGroup

Methods

GET

Provides a list of capabilities for a select list in the UI. Filterable and paginable

request query parameters
parameter value description

searchTerm

string

lastGroup

string

available response representations:

/deploy/project

Methods

PUT

acceptable request representations:

available response representations:

/deploy/project/{id}

resource-wide template parameters
parameter value description

id

long

Methods

GET

available response representations:

POST

acceptable request representations:

available response representations:

/deploy/project/all

Methods

GET

Return all Package Definitions, including jobs.

available response representations:

/deploy/project/{projectId}/versions?branchKey

resource-wide template parameters
parameter value description

projectId

long

Methods

GET

request query parameters
parameter value description

branchKey

string

available response representations:

/deploy/project/forPlan?planKey

Methods

GET

request query parameters
parameter value description

planKey

string

available response representations:

/plan

Plan service is supposed to be used to retrieve full list of plans and plan details

Methods

GET

Method used to list all plans on Bamboo service that user is allowed to see (READ permission). Should be invoked as /rest/api/latest/plan <p/> Possible expand parameters plans - list of plans plans.plan - list of plans with plan details plans.plan.actions <p/>

available response representations:

/plan/{projectKey}-{buildKey}

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

GET

available response representations:

/plan/{projectKey}/{buildKey}

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

GET

available response representations:

/plan/{projectKey}-{buildKey}/branch

resource-wide template parameters
parameter value description

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

projectKey

string

project key

Methods

GET

Provide list of branches for specified plan. Plan might be top level plan (projectKey-planKey) or job plan (projectKey-planKey-jobKey). You can use "enabledOnly" param to filter out disabled branches.

available response representations:

  • 404 [expand]

    Returned when specified project, plan does not exist

  • 200 [expand]

    List of branches in the vcs of the default repository for the given plan

  • 401 [expand]

    Returned when user has no permission to view specified plan

/plan/{projectKey}-{buildKey}/branch/{branchName}

resource-wide template parameters
parameter value description

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

branchName

string

branch display name

projectKey

string

project key

Methods

PUT

Method for creating branch for a specified plan. You can use vcsBranch query param to define which vcsBranch should newly created branch use. If not specified it will not override vcsBranch from the main plan. Example usage: curl -X PUT --user admin:admin http://localhost:8085/rest/api/latest/plan/PROJ-PLAN/branch/BranchName?vcsBranch="/refs/heads/myBranch"

available response representations:

  • 404 [expand]

    Returned when specified project, plan does not exist

  • 200 [expand]

    The newly created branch.

  • 401 [expand]

    Returned when user has no permission to view specified plan

GET

Provide details for specified Branch of a specified Plan. Plan might be top level plan (projectKey-planKey) or job plan (projectKey-planKey-jobKey).

available response representations:

  • 404 [expand]

    Returned when specified project, plan does not exist

  • 200 [expand]

    List of branches in the vcs of the default repository for the given plan

  • 401 [expand]

    Returned when user has no permission to view specified plan

/plan/{projectKey}-{buildKey}/label

resource-wide template parameters
parameter value description

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

projectKey

string

project key

Methods

GET

Provide list of labels for plan specified by projectKey-buildKey.

available response representations:

  • 404 [expand]

    Returned when specified project, plan does not exist

  • 200 (restPlanLabelList) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <labels>
        <labels start-index="0" max-result="2" size="0">
            <label name="someLabel"/>
            <label name="someLabel"/>
        </labels>
    </labels>
    

    List of comments for build result

    XML Schema

    Source:

  • 401 [expand]

    Returned when user has no permission to view specified plan

POST

Adds new label to plan specified by projectKey-buildKey.

acceptable request representations:

  • application/xml (restPlanLabel) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <label name="someLabel"/>
    

    XML Schema

    Source:

  • application/json (restPlanLabel) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <label name="someLabel"/>
    

    XML Schema

    Source:

/plan/{projectKey}-{buildKey}/label/{labelName}

resource-wide template parameters
parameter value description

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

labelName

string

label name to remove from plan

projectKey

string

project key

Methods

DELETE

Removes label from plan specified by projectKey-buildKey-buildNumber.

/plan/{projectKey}-{buildKey}/vcsBranches

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

GET

Provide list of vcs branch names for branches that exist on the default repository of this plan

available response representations:

  • 404 [expand]

    Returned when specified project, plan does not exist

  • 200 [expand]

    List of branches in the vcs of the default repository for the given plan

  • 401 [expand]

    Returned when user has no permission to view specified plan

/plan/{projectKey}-{buildKey}/issue/{issueKey}

resource-wide template parameters
parameter value description

buildKey

string

issueKey

string

projectKey

string

Methods

GET

available response representations:

/plan/{projectKey}-{buildKey}/favourite

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

POST

available response representations:

DELETE

available response representations:

/plan/{projectKey}-{buildKey}/enable

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

POST

available response representations:

DELETE

available response representations:

/plan/{projectKey}-{buildKey}/artifact

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

GET

available response representations:

/currentUser

Methods

GET

available response representations:

/deploy/environment

Methods

/deploy/environment/{environmentId}/results

resource-wide template parameters
parameter value description

environmentId

long

Methods

GET

available response representations:

/deploy/result

Methods

/deploy/result/{deploymentResultId}?includeLogs

resource-wide template parameters
parameter value description

deploymentResultId

long

Methods

GET

request query parameters
parameter value description

includeLogs

boolean

available response representations:

/queue

Lists all the builds waiting in the build queue, adds or removes a build from the build queue. May be used also to resume build on manual stage or rerun failed jobs.

Methods

GET

Provide list of build scheduled for execution and waiting in build queue.

available response representations:

  • 200 - application/xml, application/json (restQueuedBuilds) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <queue expand="queuedBuilds">
        <queuedBuilds start-index="0" max-result="1" size="0">
            <queuedBuild expand="queuedBuild" planKey="PROJECTKEY-PLANKEY" buildNumber="10" buildResultKey="PROJECTKEY-PLANKEY-10">
                <triggerReason>Manual build</triggerReason>
                <changes expand="changes" start-index="0" max-result="2" size="0">
                    <change expand="change" author="Author" changesetId="10">
                        <comment>Sample comment</comment>
                        <date>2015-01-06T00:05:28.301Z</date>
                        <files start-index="0" max-result="3" size="0">
                            <file>
                                <name>some/example/path/to/File.java</name>
                                <revision>10</revision>
                            </file>
                            <file>
                                <name>some/example/path/to/File.java</name>
                                <revision>10</revision>
                            </file>
                            <file>
                                <name>some/example/path/to/File.java</name>
                                <revision>10</revision>
                            </file>
                        </files>
                    </change>
                    <change expand="change" author="Author" changesetId="10">
                        <comment>Sample comment</comment>
                        <date>2015-01-06T00:05:28.301Z</date>
                        <files start-index="0" max-result="3" size="0">
                            <file>
                                <name>some/example/path/to/File.java</name>
                                <revision>10</revision>
                            </file>
                            <file>
                                <name>some/example/path/to/File.java</name>
                                <revision>10</revision>
                            </file>
                            <file>
                                <name>some/example/path/to/File.java</name>
                                <revision>10</revision>
                            </file>
                        </files>
                    </change>
                </changes>
            </queuedBuild>
        </queuedBuilds>
    </queue>
    

    List of queued builds waiting in the build queue

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restQueuedBuilds">
        <xs:sequence>
          <xs:element ref="link" minOccurs="0"/>
          <xs:element name="queuedBuilds" type="restQueuedBuildList" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="expand" type="xs:string"/>
      </xs:complexType>

/queue/{projectKey}-{buildKey}?stage&executeAllStages&customRevision

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

POST

Fire build execution for specified plan. Effectively, this method adds build to the build queue, so is not guarantied that build would be executed immediately. Depending on currently executed builds and length of build queue, build may be executed when queue would be drained. Additional variables could be passed to this method either as form encoded POST payload or query parameters. PLEASE note: Query parameters are more important - override those stored in form payload. Variables defined in Bamboo as global variables or plan variables MUST be prefixed with bamboo.variable ie. bamboo.variable.myVariable=valueForMyVariable. When global or plan variables would be passed to this method, will override default values for variables.

request query parameters
parameter value description

stage

string

executeAllStages

boolean

customRevision

string

acceptable request representations:

  • application/xml [expand]
  • application/json [expand]
  • application/x-www-form-urlencoded [expand]

available response representations:

  • 415 [expand]

    Returned when POST method payload is not form encoded

  • 404 [expand]

    Returned when specified plan does not exist or plan is not a top level plan

  • 200 - application/xml, application/json (restQueuedBuild) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <restQueuedBuild expand="queuedBuild" planKey="PROJECTKEY-PLANKEY" buildNumber="10" buildResultKey="PROJECTKEY-PLANKEY-10">
        <triggerReason>Manual build</triggerReason>
        <changes expand="changes" start-index="0" max-result="2" size="0">
            <change expand="change" author="Author" changesetId="10">
                <comment>Sample comment</comment>
                <date>2015-01-06T00:05:28.301Z</date>
                <files start-index="0" max-result="3" size="0">
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                </files>
            </change>
            <change expand="change" author="Author" changesetId="10">
                <comment>Sample comment</comment>
                <date>2015-01-06T00:05:28.301Z</date>
                <files start-index="0" max-result="3" size="0">
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                </files>
            </change>
        </changes>
    </restQueuedBuild>
    

    Information for queued build, including build number, changes and reason of build

    XML Schema

    Source: schema1.xsd

    <xs:element name="restQueuedBuild" type="restQueuedBuild"/>
  • 401 [expand]

    Returned when user does not have sufficient rights to view or execute build for specified plan

  • 400 [expand]

    Returned when build was not added to the queue because of Bamboo limitation - for example too many concurrent builds running for requested plan already

/queue/{projectKey}-{buildKey}-{buildNumber : ([0-9]+)}?stage&executeAllStages

resource-wide template parameters
parameter value description

buildNumber

int

build number to resume/rerun

buildKey

string

plan key (only top level plan key, can not be job key)

projectKey

string

project key

Methods

PUT

Continue partially done build. Effectively, this method adds build to the build queue, so is not guarantied that build would be executed immediately. Depending on currently executed builds and length of build queue, build may be executed when queue would be drained. Additional variables could be passed to this method only query parameters (variableName=variableValue). Variables defined in Bamboo as global variables or plan variables MUST be prefixed with bamboo.variable ie. bamboo.variable.myVariable=valueForMyVariable. When global or plan variables would be passed to this method, will override values valid for previous build execution (override).

request query parameters
parameter value description

stage

string

name of the stage that should be executed even if manual stage. Execution will follow to the next manual stage after this or end of plan if no subsequent manual stage

executeAllStages

boolean

enforce executing all stages in a plan, even if defined as manual stages. Execution will follow and include latest stage, unless some stage will fail.

available response representations:

  • 404 [expand]

    Returned when specified plan does not exist, result for provided build number does not exist or is not top level plan result

  • 200 - application/xml, application/json (restQueuedBuild) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <restQueuedBuild expand="queuedBuild" planKey="PROJECTKEY-PLANKEY" buildNumber="10" buildResultKey="PROJECTKEY-PLANKEY-10">
        <triggerReason>Manual build</triggerReason>
        <changes expand="changes" start-index="0" max-result="2" size="0">
            <change expand="change" author="Author" changesetId="10">
                <comment>Sample comment</comment>
                <date>2015-01-06T00:05:28.301Z</date>
                <files start-index="0" max-result="3" size="0">
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                </files>
            </change>
            <change expand="change" author="Author" changesetId="10">
                <comment>Sample comment</comment>
                <date>2015-01-06T00:05:28.301Z</date>
                <files start-index="0" max-result="3" size="0">
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                </files>
            </change>
        </changes>
    </restQueuedBuild>
    

    Information for queued build, including build number, changes and reason of build

    XML Schema

    Source: schema1.xsd

    <xs:element name="restQueuedBuild" type="restQueuedBuild"/>
  • 401 [expand]

    Returned when user does not have sufficient rights to view or execute build for specified plan

  • 400 [expand]

    Returned when build is currently executing or is in state not allowing execution

/queue/{projectKey}-{buildKey}-{buildNumber}

resource-wide template parameters
parameter value description

buildNumber

int

build number

buildKey

string

plan key - IMPORTANT: as build queue contains only jobs not top level plans, plan key here MUST be a job key as opposite to other methods in this resource.

projectKey

string

project key

Methods

DELETE

Stop build execution, however only if build has not been started yet - so if is waiting in the build queue. If build does not exist in the queue anymore, method has no effect.

available response representations:

  • 204 [expand]

    On success (success is also when build doesn't exists in the queue - so nothing to stop)

  • 404 [expand]

    Returned when specified plan does not exist

  • 401 [expand]

    Returned when user does not have sufficient rights to view or execute build for specified plan

/result?expand&favourite&label&issueKey&includeAllStates&continuable&buildstate&start-index&max-results

Provide build results information. Available for anonymous and authenticated users, however proper permissions are enforced

Methods

GET

Provide list of latest build results for top level plans visible for users.

request query parameters
parameter value description

expand

string

expands build result details on request. Possible values are: artifacts, comments, labels, jiraIssues, stages. stages expand is available only for top level plans. It allows to drill down to job results using stages.stage.results.result. All expand parameters should contain results.result prefix.

favourite

boolean

filters build results list to show only results for favourite plans. Works only for authenticated user

label

string

filter by comma separated list of labels

issueKey

string

filter by comma separated list of Jira issue key related to result

includeAllStates

boolean

return all build results including Unknown states

continuable

boolean

filter only results that may be continued (stopped on Manual Stage)

buildstate

boolean

filter results by state, valid values are Unknown, Successful, Failed

start-index

int

start index for results list (zero based)

max-results

int

maximum size for returned list

available response representations:

  • 200 - application/xml, application/json (restResults) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <results>
        <results start-index="0" max-result="2" size="0">
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="PPROJECTKEY-PLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="2" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>PLAN_NAME</planName>
                <projectName>PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.501Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.501Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.501Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.502Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <artifacts start-index="0" max-result="1" size="0">
                    <artifact>
                        <name>cargo log</name>
                        <link href="http://localhost:8085/bamboo/browse/PROJECTKEY-PLANKEY-2/artifact/shared/cargo-log.log" rel="self"/>
                        <producerJobKey>PROJECTKEY-PLANKEY-2</producerJobKey>
                        <shared>true</shared>
                        <size>1024</size>
                        <prettySizeDescription>1 kilobyte</prettySizeDescription>
                    </artifact>
                </artifacts>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" state="SUCCESS" lifeCycleState="Finished" number="2" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>ANOTHER_PLAN_NAME</planName>
                <projectName>ANOTHER_PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.507Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.507Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.507Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.507Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
        </results>
    </results>
    

    Latest build results for all plans

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restResults">
        <xs:sequence>
          <xs:element name="results" type="restResultList" minOccurs="0"/>
          <xs:element ref="link" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="expand" type="xs:string"/>
      </xs:complexType>

/result/{projectKey}-{buildKey}-{buildNumber : ([0-9]+)|(latest)}?expand&favourite&start-index&max-results

resource-wide template parameters
parameter value description

buildNumber

string

buildNumber (numeric value or 'latest')

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

projectKey

string

project key

Methods

GET

Provide build result specified by projectKey-buildKey-buildNumber. Build number may be specified also as "latest" for latest result.

request query parameters
parameter value description

expand

string

expands build result details on request. Possible values are: changes, metadata, artifacts, comments, labels, jiraIssues, stages, logEntries. stages expand is available only for top level plans. It allows to drill down to job results using stages.stage.results.result. logEntries and testResults are available only for job results

favourite

boolean

filters build results list to show only results for favourite plans. Works only for authenticated user

start-index

int

start index for results list (zero based)

max-results

int

maximum size for returned list

available response representations:

  • 404 [expand]

    Returned when specified project or plan does not exists

  • 200 - application/xml, application/json (resultDetails) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="PPROJECTKEY-PLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="2" id="10000" continuable="false" onceOff="false" restartable="false">
        <planName>PLAN_NAME</planName>
        <projectName>PROJECT_NAME</projectName>
        <buildStartedTime>2015-01-06T00:05:28.501Z</buildStartedTime>
        <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
        <buildCompletedTime>2015-01-06T00:05:28.501Z</buildCompletedTime>
        <buildCompletedDate>2015-01-06T00:05:28.501Z</buildCompletedDate>
        <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
        <buildDurationInSeconds>1</buildDurationInSeconds>
        <buildDuration>1000</buildDuration>
        <buildDurationDescription>1 second</buildDurationDescription>
        <buildRelativeTime>1 hour ago</buildRelativeTime>
        <queueStartedTime>2015-01-06T00:05:28.502Z</queueStartedTime>
        <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
        <restartCount>0</restartCount>
        <artifacts start-index="0" max-result="1" size="0">
            <artifact>
                <name>cargo log</name>
                <link href="http://localhost:8085/bamboo/browse/PROJECTKEY-PLANKEY-2/artifact/shared/cargo-log.log" rel="self"/>
                <producerJobKey>PROJECTKEY-PLANKEY-2</producerJobKey>
                <shared>true</shared>
                <size>1024</size>
                <prettySizeDescription>1 kilobyte</prettySizeDescription>
            </artifact>
        </artifacts>
        <comments start-index="0" max-result="2" size="0">
            <comment author="bambooUser">
                <content>Sample comment for build</content>
                <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
            </comment>
            <comment author="bambooUser">
                <content>Sample comment for build</content>
                <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
            </comment>
        </comments>
        <labels start-index="0" max-result="2" size="0">
            <label name="someLabel"/>
            <label name="someLabel"/>
        </labels>
        <jiraIssues start-index="0" max-result="2" size="0">
            <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
            </issue>
            <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
            </issue>
        </jiraIssues>
        <changes expand="changes" start-index="0" max-result="2" size="0">
            <change expand="change" author="Author" changesetId="10">
                <comment>Sample comment</comment>
                <date>2015-01-06T00:05:28.301Z</date>
                <files start-index="0" max-result="3" size="0">
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                </files>
            </change>
            <change expand="change" author="Author" changesetId="10">
                <comment>Sample comment</comment>
                <date>2015-01-06T00:05:28.301Z</date>
                <files start-index="0" max-result="3" size="0">
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                </files>
            </change>
        </changes>
        <metadata start-index="0" max-result="1" size="0">
            <item key="ManualBuildTriggerReason.userName" value="admin"/>
        </metadata>
    </result>
    

    Result of single build. Presented content contain information for finished build. If build is in progress, contains additional runtime information. Top level plan contains additionally progress information, job progress information, current log entries and hasExecutableAgent boolean flag.

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="resultDetails">
        <xs:complexContent>
          <xs:extension base="result">
            <xs:sequence>
              <xs:element name="changes" type="restChangeList" minOccurs="0"/>
              <xs:element name="testResults" type="restTestResults" minOccurs="0"/>
              <xs:element name="metadata" type="restBuildMetadataList" minOccurs="0"/>
              <xs:element ref="progress" minOccurs="0"/>
              <xs:element name="queue" type="restBuildQueueStatus" minOccurs="0"/>
              <xs:element name="logEntries" type="restBuildLogEntryList" minOccurs="0"/>
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
  • 401 [expand]

    Returned when user has no permission to view specified plan

/result/{projectKey}?expand&favourite&label&issueKey&includeAllStates&continuable&buildstate&start-index&max-results

resource-wide template parameters
parameter value description

projectKey

string

project key to filter plan result list

Methods

GET

Provide list of latest build results for top level plans for specified project. List of results is limited to plans visible for user.

request query parameters
parameter value description

expand

string

expands build result details on request. Possible values are: artifacts, comments, labels, jiraIssues, stages. stages expand is available only for top level plans. It allows to drill down to job results using stages.stage.results.result. All expand parameters should contain results.result prefix.

favourite

boolean

filters build results list to show only results for favourite plans. Works only for authenticated user

label

string

filter by comma separated list of labels

issueKey

string

filter by comma separated list of Jira issue key related to result

includeAllStates

boolean

return all build results including Unknown states

continuable

boolean

filter only results that may be continued (stopped on Manual Stage)

buildstate

boolean

filter results by state, valid values are Unknown, Successful, Failed

start-index

int

start index for results list (zero based)

max-results

int

maximum size for returned list

available response representations:

  • 404 [expand]

    Returned when specified project does not exists or user does not have permission to see plans for specified project

  • 200 - application/xml, application/json (restResults) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <results>
        <results start-index="0" max-result="1" size="0">
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="ANOTHERPPROJECTKEY-ANOTHERPLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="1" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>PLAN_NAME</planName>
                <projectName>PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.507Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.507Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.507Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.507Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
        </results>
    </results>
    

    Latest build results for plans for specified project

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restResults">
        <xs:sequence>
          <xs:element name="results" type="restResultList" minOccurs="0"/>
          <xs:element ref="link" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="expand" type="xs:string"/>
      </xs:complexType>

/result/byChangeset/{csid}

resource-wide template parameters
parameter value description

csid

string

changeset id related to build result

Methods

GET

Provide list of build results related to changeset id passed as parameter. List of results contains results from all plans related to this changeset.

available response representations:

  • 200 - application/xml, application/json (restResults) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <results>
        <results start-index="0" max-result="2" size="0">
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="ANOTHERPPROJECTKEY-ANOTHERPLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="1" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>PLAN_NAME</planName>
                <projectName>PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.507Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.507Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.507Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.507Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="PPROJECTKEY-PLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="2" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>PLAN_NAME</planName>
                <projectName>PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.501Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.501Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.501Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.502Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <artifacts start-index="0" max-result="1" size="0">
                    <artifact>
                        <name>cargo log</name>
                        <link href="http://localhost:8085/bamboo/browse/PROJECTKEY-PLANKEY-2/artifact/shared/cargo-log.log" rel="self"/>
                        <producerJobKey>PROJECTKEY-PLANKEY-2</producerJobKey>
                        <shared>true</shared>
                        <size>1024</size>
                        <prettySizeDescription>1 kilobyte</prettySizeDescription>
                    </artifact>
                </artifacts>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
        </results>
    </results>
    

    Build results for specified changeset.

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restResults">
        <xs:sequence>
          <xs:element name="results" type="restResultList" minOccurs="0"/>
          <xs:element ref="link" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="expand" type="xs:string"/>
      </xs:complexType>

/result/{projectKey}-{buildKey}?expand&favourite&label&issueKey&includeAllStates&continuable&buildstate&start-index&max-results

resource-wide template parameters
parameter value description

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

projectKey

string

project key

Methods

GET

Provide list of build results for specified plan. Plan might be top level plan (projectKey-planKey) or job plan (projectKey-planKey-jobKey).

request query parameters
parameter value description

expand

string

expands build result details on request. Possible values are: artifacts, comments, labels, jiraIssues, stages. stages expand is available only for top level plans. It allows to drill down to job results using stages.stage.results.result. All expand parameters should contain results.result prefix.

favourite

boolean

filters build results list to show only results for favourite plans. Works only for authenticated user

label

string

filter by comma separated list of labels

issueKey

string

filter by comma separated list of Jira issue key related to result

includeAllStates

boolean

return all build results including Unknown states

continuable

boolean

filter only results that may be continued (stopped on Manual Stage)

buildstate

boolean

filter results by state, valid values are Unknown, Successful, Failed

start-index

int

start index for results list (zero based)

max-results

int

maximum size for returned list

available response representations:

  • 404 [expand]

    Returned when specified project or plan does not exists

  • 200 - application/xml, application/json (restResults) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <results>
        <results start-index="0" max-result="2" size="0">
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="ANOTHERPPROJECTKEY-ANOTHERPLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="1" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>PLAN_NAME</planName>
                <projectName>PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.507Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.507Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.507Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.507Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="PPROJECTKEY-PLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="2" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>PLAN_NAME</planName>
                <projectName>PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.501Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.501Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.501Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.502Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <artifacts start-index="0" max-result="1" size="0">
                    <artifact>
                        <name>cargo log</name>
                        <link href="http://localhost:8085/bamboo/browse/PROJECTKEY-PLANKEY-2/artifact/shared/cargo-log.log" rel="self"/>
                        <producerJobKey>PROJECTKEY-PLANKEY-2</producerJobKey>
                        <shared>true</shared>
                        <size>1024</size>
                        <prettySizeDescription>1 kilobyte</prettySizeDescription>
                    </artifact>
                </artifacts>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
        </results>
    </results>
    

    Latest build results for specified plan. Results are ordered from latest or oldest.

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restResults">
        <xs:sequence>
          <xs:element name="results" type="restResultList" minOccurs="0"/>
          <xs:element ref="link" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="expand" type="xs:string"/>
      </xs:complexType>
  • 401 [expand]

    Returned when user has no permission to view specified plan

/result/{projectKey}-{buildKey}/branch/{branchName}?expand&favourite&label&issueKey&includeAllStates&continuable&buildstate&start-index&max-results

resource-wide template parameters
parameter value description

buildKey

string

branchName

string

projectKey

string

Methods

GET

Provide list of build results for specified plan. Plan might be top level plan (projectKey-planKey) or job plan (projectKey-planKey-jobKey).

request query parameters
parameter value description

expand

string

favourite

boolean

label

string

issueKey

string

includeAllStates

boolean

continuable

boolean

buildstate

boolean

start-index

int

max-results

int

available response representations:

  • 404 [expand]

    Returned when specified project or plan does not exists

  • 200 - application/xml, application/json (restResults) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <results>
        <results start-index="0" max-result="2" size="0">
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="ANOTHERPPROJECTKEY-ANOTHERPLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="1" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>PLAN_NAME</planName>
                <projectName>PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.507Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.507Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.507Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.507Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
            <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="PPROJECTKEY-PLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="2" id="10000" continuable="false" onceOff="false" restartable="false">
                <planName>PLAN_NAME</planName>
                <projectName>PROJECT_NAME</projectName>
                <buildStartedTime>2015-01-06T00:05:28.501Z</buildStartedTime>
                <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
                <buildCompletedTime>2015-01-06T00:05:28.501Z</buildCompletedTime>
                <buildCompletedDate>2015-01-06T00:05:28.501Z</buildCompletedDate>
                <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
                <buildDurationInSeconds>1</buildDurationInSeconds>
                <buildDuration>1000</buildDuration>
                <buildDurationDescription>1 second</buildDurationDescription>
                <buildRelativeTime>1 hour ago</buildRelativeTime>
                <queueStartedTime>2015-01-06T00:05:28.502Z</queueStartedTime>
                <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
                <restartCount>0</restartCount>
                <artifacts start-index="0" max-result="1" size="0">
                    <artifact>
                        <name>cargo log</name>
                        <link href="http://localhost:8085/bamboo/browse/PROJECTKEY-PLANKEY-2/artifact/shared/cargo-log.log" rel="self"/>
                        <producerJobKey>PROJECTKEY-PLANKEY-2</producerJobKey>
                        <shared>true</shared>
                        <size>1024</size>
                        <prettySizeDescription>1 kilobyte</prettySizeDescription>
                    </artifact>
                </artifacts>
                <comments start-index="0" max-result="2" size="0">
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                    <comment author="bambooUser">
                        <content>Sample comment for build</content>
                        <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                        <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
                    </comment>
                </comments>
                <labels start-index="0" max-result="2" size="0">
                    <label name="someLabel"/>
                    <label name="someLabel"/>
                </labels>
                <jiraIssues start-index="0" max-result="2" size="0">
                    <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
                    </issue>
                    <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                        <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
                    </issue>
                </jiraIssues>
            </result>
        </results>
    </results>
    

    Latest build results for specified plan. Results are ordered from latest or oldest.

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restResults">
        <xs:sequence>
          <xs:element name="results" type="restResultList" minOccurs="0"/>
          <xs:element ref="link" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="expand" type="xs:string"/>
      </xs:complexType>
  • 401 [expand]

    Returned when user has no permission to view specified plan

/result/{projectKey}-{buildKey}/{buildNumber : ([0-9]+)|(latest)}?expand&favourite&start-index&max-results

resource-wide template parameters
parameter value description

buildNumber

string

buildNumber (numeric value or 'latest')

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

projectKey

string

project key

Methods

GET

Provide build result specified by projectKey-buildKey-buildNumber. Build number may be specified also as "latest" for latest result.

request query parameters
parameter value description

expand

string

expands build result details on request. Possible values are: changes, metadata, artifacts, comments, labels, jiraIssues, stages, logEntries. stages expand is available only for top level plans. It allows to drill down to job results using stages.stage.results.result. logEntries and testResults are available only for job results

favourite

boolean

filters build results list to show only results for favourite plans. Works only for authenticated user

start-index

int

start index for results list (zero based)

max-results

int

maximum size for returned list

available response representations:

  • 404 [expand]

    Returned when specified project or plan does not exists

  • 200 - application/xml, application/json (resultDetails) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <result expand="changes,metadata,artifacts,comments,labels,jiraIssues,stages" key="PPROJECTKEY-PLANKEY-2" state="SUCCESS" lifeCycleState="Finished" number="2" id="10000" continuable="false" onceOff="false" restartable="false">
        <planName>PLAN_NAME</planName>
        <projectName>PROJECT_NAME</projectName>
        <buildStartedTime>2015-01-06T00:05:28.501Z</buildStartedTime>
        <prettyBuildStartedTime>2015-01-06T00:05:28</prettyBuildStartedTime>
        <buildCompletedTime>2015-01-06T00:05:28.501Z</buildCompletedTime>
        <buildCompletedDate>2015-01-06T00:05:28.501Z</buildCompletedDate>
        <prettyBuildCompletedTime>2015-01-06T00:05:28</prettyBuildCompletedTime>
        <buildDurationInSeconds>1</buildDurationInSeconds>
        <buildDuration>1000</buildDuration>
        <buildDurationDescription>1 second</buildDurationDescription>
        <buildRelativeTime>1 hour ago</buildRelativeTime>
        <queueStartedTime>2015-01-06T00:05:28.502Z</queueStartedTime>
        <prettyQueueStartedTime>2015-01-06T00:05:28</prettyQueueStartedTime>
        <restartCount>0</restartCount>
        <artifacts start-index="0" max-result="1" size="0">
            <artifact>
                <name>cargo log</name>
                <link href="http://localhost:8085/bamboo/browse/PROJECTKEY-PLANKEY-2/artifact/shared/cargo-log.log" rel="self"/>
                <producerJobKey>PROJECTKEY-PLANKEY-2</producerJobKey>
                <shared>true</shared>
                <size>1024</size>
                <prettySizeDescription>1 kilobyte</prettySizeDescription>
            </artifact>
        </artifacts>
        <comments start-index="0" max-result="2" size="0">
            <comment author="bambooUser">
                <content>Sample comment for build</content>
                <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
            </comment>
            <comment author="bambooUser">
                <content>Sample comment for build</content>
                <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
            </comment>
        </comments>
        <labels start-index="0" max-result="2" size="0">
            <label name="someLabel"/>
            <label name="someLabel"/>
        </labels>
        <jiraIssues start-index="0" max-result="2" size="0">
            <issue key="BAM-9040" summary="Break out the Run options from the current menu" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                <url href="https://jira.atlassian.com/browse/BAM-9040" rel="self"/>
            </issue>
            <issue key="BAM-9137" summary="Task to allow users to tag and branch in SVN" iconUrl="https://jira.atlassian.com/images/icons/sales.gif" issueType="Story" status="Resolved" statusIconUrl="https://jira.atlassian.com/images/icons/status_resolved.gif">
                <url href="https://jira.atlassian.com/browse/BAM-9137" rel="self"/>
            </issue>
        </jiraIssues>
        <changes expand="changes" start-index="0" max-result="2" size="0">
            <change expand="change" author="Author" changesetId="10">
                <comment>Sample comment</comment>
                <date>2015-01-06T00:05:28.301Z</date>
                <files start-index="0" max-result="3" size="0">
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                </files>
            </change>
            <change expand="change" author="Author" changesetId="10">
                <comment>Sample comment</comment>
                <date>2015-01-06T00:05:28.301Z</date>
                <files start-index="0" max-result="3" size="0">
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                    <file>
                        <name>some/example/path/to/File.java</name>
                        <revision>10</revision>
                    </file>
                </files>
            </change>
        </changes>
        <metadata start-index="0" max-result="1" size="0">
            <item key="ManualBuildTriggerReason.userName" value="admin"/>
        </metadata>
    </result>
    

    Result of single build. Presented content contain information for finished build. If build is in progress, contains additional runtime information. Top level plan contains additionally progress information, job progress information, current log entries and hasExecutableAgent boolean flag.

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="resultDetails">
        <xs:complexContent>
          <xs:extension base="result">
            <xs:sequence>
              <xs:element name="changes" type="restChangeList" minOccurs="0"/>
              <xs:element name="testResults" type="restTestResults" minOccurs="0"/>
              <xs:element name="metadata" type="restBuildMetadataList" minOccurs="0"/>
              <xs:element ref="progress" minOccurs="0"/>
              <xs:element name="queue" type="restBuildQueueStatus" minOccurs="0"/>
              <xs:element name="logEntries" type="restBuildLogEntryList" minOccurs="0"/>
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
  • 401 [expand]

    Returned when user has no permission to view specified plan

/result/{projectKey}-{buildKey}-{buildNumber}/comment

resource-wide template parameters
parameter value description

buildNumber

string

build number

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

projectKey

string

project key

Methods

GET

Provide list of comments for build result specified by projectKey-buildKey-buildNumber. Build number may be specified also as "latest" for latest result.

available response representations:

  • 404 [expand]

    Returned when specified project, plan or build result does not exists

  • 200 - application/xml, application/json (restCommentList) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <comments>
        <comments start-index="0" max-result="2" size="0">
            <comment author="bambooUser">
                <content>Sample comment for build</content>
                <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
            </comment>
            <comment author="bambooUser">
                <content>Sample comment for build</content>
                <creationDate>2015-01-06T00:05:28.502Z</creationDate>
                <modificationDate>2015-01-06T00:05:28.502Z</modificationDate>
            </comment>
        </comments>
    </comments>
    

    List of comments for build result

    XML Schema

    Source: schema1.xsd

    <xs:element name="restCommentList" type="restCommentList"/>
  • 401 [expand]

    Returned when user has no permission to view specified plan

POST

Adds new comment to build result specified by projectKey-buildKey-buildNumber.

acceptable request representations:

  • application/xml (restComment) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <comment>
        <content>new comment content</content>
    </comment>
    

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restComment">
        <xs:sequence>
          <xs:element name="modificationDate" type="xs:string" minOccurs="0"/>
          <xs:element name="creationDate" type="xs:string" minOccurs="0"/>
          <xs:element name="content" type="xs:string" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="author" type="xs:string"/>
      </xs:complexType>
  • application/json (restComment) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <comment>
        <content>new comment content</content>
    </comment>
    

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restComment">
        <xs:sequence>
          <xs:element name="modificationDate" type="xs:string" minOccurs="0"/>
          <xs:element name="creationDate" type="xs:string" minOccurs="0"/>
          <xs:element name="content" type="xs:string" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="author" type="xs:string"/>
      </xs:complexType>

/result/{projectKey}-{buildKey}-{buildNumber}/label

resource-wide template parameters
parameter value description

buildNumber

string

buildNumber (numeric value or 'latest')

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

projectKey

string

project key

Methods

GET

Provide list of labels for build result specified by projectKey-buildKey-buildNumber. Build number may be specified also as "latest" for latest result.

available response representations:

  • 404 [expand]

    Returned when specified project, plan or build result does not exists

  • 200 (restBuildLabelList) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <labels>
        <labels start-index="0" max-result="2" size="0">
            <label name="someLabel"/>
            <label name="someLabel"/>
        </labels>
    </labels>
    

    List of comments for build result

    XML Schema

    Source: schema1.xsd

    <xs:element name="restBuildLabelList" type="restBuildLabelList"/>
  • 401 [expand]

    Returned when user has no permission to view specified plan

POST

Adds new label to build result specified by projectKey-buildKey-buildNumber.

acceptable request representations:

  • application/xml (restBuildLabel) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <label name="someLabel"/>
    

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restBuildLabel">
        <xs:sequence/>
        <xs:attribute name="name" type="xs:string"/>
      </xs:complexType>
  • application/json (restBuildLabel) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <label name="someLabel"/>
    

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restBuildLabel">
        <xs:sequence/>
        <xs:attribute name="name" type="xs:string"/>
      </xs:complexType>

/result/{projectKey}-{buildKey}-{buildNumber}/label/{labelName}

resource-wide template parameters
parameter value description

buildNumber

string

buildNumber (numeric value or 'latest')

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

labelName

string

label name to remove from build result

projectKey

string

project key

Methods

DELETE

Removes label from build result specified by projectKey-buildKey-buildNumber.

/result/status/{projectKey}-{buildKey}-{buildNumber : ([0-9]+)}

resource-wide template parameters
parameter value description

buildNumber

string

buildNumber (numeric value only, 'latest' keyword is not supported for this method)

buildKey

string

plan key (might be simply planKey or composite planKey-jobKey)

projectKey

string

project key

Methods

GET

Provide runtime information for currently executing build result. The key difference to other methods is that method is optimized to provide information available in memory only, so no database calls are made. The information provided is not as wide as for finished results, but the call is optimized for speed.

available response representations:

  • 404 [expand]

    Returned when specified project, plan or build result does not exists. Also when build result is not currently executed ie. build has been completed already

  • 200 (restResultStatus) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <status expand="stages" key="PROJECTKEY-PLANKEY-100">
        <finished>false</finished>
        <prettyQueuedTime>2015-01-06T00:05:29</prettyQueuedTime>
        <progress>
            <isValid>true</isValid>
            <isUnderAverageTime>true</isUnderAverageTime>
            <percentageCompleted>0.4669655761516365</percentageCompleted>
            <percentageCompletedPretty>46%</percentageCompletedPretty>
            <prettyTimeRemaining>Approximately 2 minutes remaining</prettyTimeRemaining>
            <prettyTimeRemainingLong>Approximately 2 minutes remaining</prettyTimeRemainingLong>
            <averageBuildDuration>120000</averageBuildDuration>
            <prettyAverageBuildDuration>2 mins</prettyAverageBuildDuration>
            <buildTime>60000</buildTime>
            <prettyBuildTime>1 min</prettyBuildTime>
        </progress>
        <currentStage>first stage</currentStage>
        <stages expand="stage" start-index="0" max-result="1" size="0">
            <stage>
                <results expand="results" start-index="0" max-result="1" size="0">
                    <result expand="result" state="Unknown">
                        <progress>
                            <isValid>true</isValid>
                            <isUnderAverageTime>true</isUnderAverageTime>
                            <percentageCompleted>0.4669655761516365</percentageCompleted>
                            <percentageCompletedPretty>46%</percentageCompletedPretty>
                            <prettyTimeRemaining>Approximately 2 minutes remaining</prettyTimeRemaining>
                            <prettyTimeRemainingLong>Approximately 2 minutes remaining</prettyTimeRemainingLong>
                            <averageBuildDuration>120000</averageBuildDuration>
                            <prettyAverageBuildDuration>2 mins</prettyAverageBuildDuration>
                            <buildTime>60000</buildTime>
                            <prettyBuildTime>1 min</prettyBuildTime>
                        </progress>
                        <waiting>false</waiting>
                        <queued>false</queued>
                        <updatingSource>false</updatingSource>
                        <prettyVcsUpdateDuration>10 seconds</prettyVcsUpdateDuration>
                    </result>
                </results>
                <name>stageName</name>
                <description>stage description</description>
                <isBuilding>true</isBuilding>
                <isCompleted>false</isCompleted>
                <isSuccessful>false</isSuccessful>
                <index>0</index>
            </stage>
        </stages>
    </status>
    

    Currently executing build status

    XML Schema

    Source:

  • 401 [expand]

    Returned when user has no permission to view specified plan

/project

Methods

GET

Method used to list all projects defined in Bamboo. Permissions for projects are checked based on Plan permissions (no project level permissions in Bamboo) Projects without any plan visible for user are not listed Should be invoked as /rest/api/latest/project <p/> Possible expand parameters projects - list of projects projects.project - list of projects with project details projects.project.plans - list of project details and plans for project projects.project.plans.plan - list of project details and plans for project with plan details

available response representations:

/project/{projectKey}

resource-wide template parameters
parameter value description

projectKey

string

Methods

GET

Method used to retrieve information for project specified as project key Should be invoked as /rest/api/latest/project/PROJECTKEY <p/> Possible expand parameters plans - list of plans for project plans.plan - list of plans with plan details (only plans visible - READ permission for user) plans.plan.actions - list of plans with plan details and actions available for user for plan

available response representations:

/deploy/issue-status

Methods

/deploy/issue-status/{key}/{deploymentProjectId}

resource-wide template parameters
parameter value description

deploymentProjectId

string

key

string

Methods

GET

available response representations:

/deploy/issue-status/{key}

resource-wide template parameters
parameter value description

key

string

Methods

GET

available response representations:

/

Directory resource for Bamboo REST resources

Methods

GET

Provides list of available REST resources in Bamboo

available response representations:

  • 200 - application/xml, application/json (restResources) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <resources>
        <resources start-index="0" max-result="0" size="0">
            <resource name="info">
                <link href="http://localhost:8085/bamboo/rest/api/latest/info" rel="self"/>
            </resource>
            <resource name="project">
                <link href="http://localhost:8085/bamboo/rest/api/latest/project" rel="self"/>
            </resource>
            <resource name="plan">
                <link href="http://localhost:8085/bamboo/rest/api/latest/plan" rel="self"/>
            </resource>
            <resource name="result">
                <link href="http://localhost:8085/bamboo/rest/api/latest/result" rel="self"/>
            </resource>
            <resource name="chart">
                <link href="http://localhost:8085/bamboo/rest/api/latest/chart" rel="self"/>
            </resource>
            <resource name="queue">
                <link href="http://localhost:8085/bamboo/rest/api/latest/queue" rel="self"/>
            </resource>
            <resource name="export">
                <link href="http://localhost:8085/bamboo/rest/api/latest/export" rel="self"/>
            </resource>
            <resource name="clone">
                <link href="http://localhost:8085/bamboo/rest/api/latest/clone" rel="self"/>
            </resource>
            <resource name="currentUser">
                <link href="http://localhost:8085/bamboo/rest/api/latest/currentUser" rel="self"/>
            </resource>
        </resources>
    </resources>
    

    List of available REST resources

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="restResources">
        <xs:sequence>
          <xs:element ref="link" minOccurs="0"/>
          <xs:element name="resources" type="restResourceList" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="expand" type="xs:string"/>
      </xs:complexType>

/info

Methods

GET

available response representations:

/deploy/version

Methods

/deploy/version/{id}/status

resource-wide template parameters
parameter value description

id

string

Methods

GET

available response representations:

/deploy/version/{id}/status/{state}

resource-wide template parameters
parameter value description

id

string

state

string

Methods

POST

available response representations:

/dependency

Methods

/dependency/{projectKey}-{buildKey}/child

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

GET

List of plan child dependencies

available response representations:

/dependency/{projectKey}-{buildKey}/parent

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

GET

List of plan parent dependencies

available response representations:

/dependency/search/{projectKey}-{buildKey}/child?searchTerm

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

GET

Search for available plan child dependencies

request query parameters
parameter value description

searchTerm

string

available response representations:

/dependency/search/{projectKey}-{buildKey}/parent?searchTerm

resource-wide template parameters
parameter value description

buildKey

string

projectKey

string

Methods

GET

Search for available plan parent dependencies

request query parameters
parameter value description

searchTerm

string

available response representations:

/deploy/dashboard

Methods

GET

available response representations:

/deploy/dashboard/{projectId}

resource-wide template parameters
parameter value description

projectId

long

Methods

GET

available response representations:

/clone

Methods

/clone/{projectKey}-{buildKey}:{toProjectKey}-{toBuildKey}

resource-wide template parameters
parameter value description

toBuildKey

string

buildKey

string

toProjectKey

string

projectKey

string

Methods

PUT

Method used to clone an existing Plan into a new one, possibly into different project. Usage: /rest/api/latest/clone/FROM-PLAN:TO-PLAN

available response representations:

/deploy/preview

Methods

/deploy/preview/version?versionName&versionId&deploymentProjectId&previousVersionId

Methods

GET

request query parameters
parameter value description

versionName

string

versionId

long

deploymentProjectId

long

previousVersionId

long

available response representations:

/deploy/preview/result?resultKey&planKey&buildNumber&deploymentProjectId&previousVersionId

Methods

GET

request query parameters
parameter value description

resultKey

string

planKey

string

buildNumber

int

deploymentProjectId

long

previousVersionId

long

available response representations:

/deploy/preview/possibleResults?planKey&deploymentProjectId

Methods

GET

request query parameters
parameter value description

planKey

string

deploymentProjectId

long

available response representations:

/deploy/preview/versionName?deploymentProjectId&resultKey

Methods

GET

request query parameters
parameter value description

deploymentProjectId

long

resultKey

string

available response representations:

/server

Methods

GET

available response representations:

/server/resume

Methods

POST

Resumes the server

available response representations:

/server/pause

Methods

POST

Pauses the server

available response representations:

/deploy/projectVersioning

Methods

/deploy/projectVersioning/{id}/variables?includePasswords

resource-wide template parameters
parameter value description

id

long

Methods

GET

request query parameters
parameter value description

includePasswords

boolean

available response representations:

/deploy/projectVersioning/{id}/namingPreview?nextVersionName&incrementNumbers&incrementableVariables

resource-wide template parameters
parameter value description

id

long

Methods

GET

request query parameters
parameter value description

nextVersionName

string

incrementNumbers

boolean

incrementableVariables

string

available response representations:

/deploy/projectVersioning/{id}/nextVersion?resultKey

resource-wide template parameters
parameter value description

id

long

Methods

GET

request query parameters
parameter value description

resultKey

string

available response representations:

/deploy/projectVersioning/{id}/parseVariables?nextVersionName

resource-wide template parameters
parameter value description

id

long

Methods

GET

request query parameters
parameter value description

nextVersionName

string

available response representations:

/search

Methods

/search/users?searchTerm&includeAvatars

Methods

GET

A starts-with search of users based on their username, full-name and if allowed email address.

request query parameters
parameter value description

searchTerm

string

Mandatory. The term to search for in users.

includeAvatars

boolean

if true will include avatar urls in the response. If gravatar is not enabled, no urls will be returned

available response representations:

  • 200 - application/xml, application/json (searchResultsList) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <searchResults start-index="0" max-result="1" size="1">
        <searchResults id="jsmith" type="user">
            <searchEntity xsi:type="userSearchResult" id="jsmith" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <username>jsmith</username>
                <fullName>John Smith</fullName>
                <displayableEmail>jsmith@example.com</displayableEmail>
                <avatarUrl>https://secure.gravatar.com/avatar/asdfasdfasdfasdf.jpg?d=mm&amp;s=16&amp;r=g</avatarUrl>
            </searchEntity>
        </searchResults>
    </searchResults>
    

    Search results for users matching the provided search term

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="searchResultsList">
        <xs:sequence>
          <xs:element name="searchResults" type="searchResult" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="start-index" type="xs:int" use="required"/>
        <xs:attribute name="max-result" type="xs:int" use="required"/>
        <xs:attribute name="size" type="xs:int" use="required"/>
      </xs:complexType>

/search/authors?searchTerm&unlinkedOnly

Methods

GET

A starts-with search of authors based on their authorname,

request query parameters
parameter value description

searchTerm

string

Mandatory. The term to search for in authors.

unlinkedOnly

boolean

if true will only include authors which are not currently linked to a user.

available response representations:

  • 200 - application/xml, application/json (searchResultsList) [expand]

    Example
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <searchResults start-index="0" max-result="1" size="1">
        <searchResults id="jsmith" type="author">
            <searchEntity xsi:type="authorSearchResult" id="jsmith" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <authorName>jsmith</authorName>
            </searchEntity>
        </searchResults>
    </searchResults>
    

    Search results for authors matching the provided search term

    XML Schema

    Source: schema1.xsd

    <xs:complexType name="searchResultsList">
        <xs:sequence>
          <xs:element name="searchResults" type="searchResult" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="start-index" type="xs:int" use="required"/>
        <xs:attribute name="max-result" type="xs:int" use="required"/>
        <xs:attribute name="size" type="xs:int" use="required"/>
      </xs:complexType>

/search/plans?searchTerm

Methods

GET

Performs a "starts with" search against full plan name and full plan key. Use "type" argument to filter by plan type by default will return TopLevelPlans

request query parameters
parameter value description

searchTerm

string

to search for. Optional

available response representations:

/search/branches?masterPlanKey&includeMasterBranch&releasedInDeployment&searchTerm

Methods

GET

Performs a "starts with" search against full plan branch name and full plan branch key. Branches are restricted to "masterPlanKey" plan.

request query parameters
parameter value description

masterPlanKey

string

includeMasterBranch

boolean

releasedInDeployment

int

searchTerm

string

available response representations:

/search/projects?searchTerm

Methods

GET

Performs a contains search against project name.

request query parameters
parameter value description

searchTerm

string

to search for. Optional

available response representations:

/search/versions?searchTerm&deploymentProjectId&branchKey&chronologicalOrder

Methods

GET

Performs a contains search against a version name.

request query parameters
parameter value description

searchTerm

string

deploymentProjectId

long

branchKey

string

chronologicalOrder

boolean

available response representations:

/agent/assignment?executorType&executorId

Methods

GET

request query parameters
parameter value description

executorType

string

executorId

long

available response representations:

POST

request query parameters
parameter value description

executorType

string

executorId

long

assignmentType

string

entityId

long

available response representations:

DELETE

request query parameters
parameter value description

executorType

string

executorId

long

assignmentType

string

entityId

long

available response representations:

/agent/assignment/search?executorType&executorId&entityType&searchTerm

Methods

GET

request query parameters
parameter value description

executorType

string

executorId

long

entityType

string

searchTerm

string

available response representations:

/quicksearch?searchTerm

Methods

GET

Performs a starts with search against full plan name and full plan key. Use "type" argument to filter by plan type by default will return TopLevelPlans

request query parameters
parameter value description

searchTerm

string

to search for. Optional

available response representations: