You are viewing the documentation of TeamCity 10.x and 2017.x, which is not the most recently released version of TeamCity.
View this page in the latest documentation or refer to the listing to choose the documentation corresponding to your TeamCity version.


Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


Also supported:
GET/PUT http://teamcity:8111/httpAuth/app/rest/vcs-roots/<vcsRootLocator>/properties/<property_name>
http://teamcity:8111/httpAuth/app/rest/vcs-roots/<vcsRootLocator>/<field_name>, where <field_name> is one of the following: name, shared, project (post project locator to "project" to associate a VCS root with a specific project). Before TeamCity 8.0 project used to be a "projectId".

List all VCS root instances: GET http://teamcity:8111/httpAuth/app/rest/vcs-root-instances
A "VCS root" is the setting configured in TeamCity UI. "VCS root instance" is the internal TeamCity entity which is derived from the "VCS root" to perform actual VCS operation.
If the VCS root has no %-references to a parameters, a single VCS root corresponds to a single "VCS root instance".
f a VCS root has %-reference to a parameter and the reference resolves to different value when the VCS root is attached to different configurations or custom builds are run, a single "VCS root" can generate several "VCS root instances".

Since TeamCity 10.0:

There are two endpoints dedicated at using in commit hooks  from the version control repositories:
POST http://teamcity:8111/app/rest/vcs-root-instances/checkingForChangesQueue?locator=<locator> - returns the list of VCS root instances matched, just like GET http://teamcity:8111/httpAuth/app/rest/vcs-root-instances?locator=<locator>
POST http://teamcity:8111/app/rest/vcs-root-instances/commitHookNotification?locator=<locator> - returns plain-text textual human-readable message on the action performed, HTTP response 202 in case of successful operation
Both perform the same action (put the VCS root instances matched by the <locator>) to the queue for "checking for changes" process and differ only in responses they produce.
Note that since the matched VCS root instances are the same as for .../app/rest/vcs-root-instances?locator=<locator> request and that means that by default only the first 100 are matched and the rest are ignored. If this limit is hit consider tweaking the <locator> to match less instances (recommended) or increase the limit e.g. by adding ",count:1000" to the locator.

Build Configuration And Template Settings


Get details of an individual change: GET http://teamcity:8111/app/rest/changes/id:changeId
Get information about a changed file action : the files node lists changed files. Since TeamCity 10.0, the information about the changed file action is reported via the changeType attribute for the files listed as one of the following:  added, edited, removed, copied or unchanged.

Since TeamCity 10.0:

Schedule checking for changes for VCS root instance nodes specified by <locator>:  POST http://teamcity:8111/app/rest/vcs-root-instances/checkingForChangesQueue?locator=<locator>  

Schedule checking for changes for VCS root instance nodes specified by <locator> via a commit hook POST http://teamcity:8111/app/rest/vcs-root-instances/commitHookNotification?locator=<locator>

Build problems

GET http://teamcity:8111/httpAuth/app/rest/problemOccurrences?locator=build:(BUILD_LOCATOR)