On this page:
General Info
Vendor | JetBrains |
License | |
Type | free, open-source |
Plugin Description
Exposes the TeamCity API via REST.
Usage
Details of the API usage are described at the version-specific pages:
- for TeamCity 10.x and TeamCity 2017.x
- for TeamCity 9.x
- for TeamCity 8.x
- for TeamCity versions 5.0 - 7.x
REST API Versions
As REST API evolves from one TeamCity version to another, there can be incompatible changes in the protocol.
Under the http://teamcity:8111/app/rest/
URL the latest version is available.
Under http://teamcity:8111/app/rest/
<version>
URL, other versions CAN be available. Our general policy is to supply TeamCity with ONE previous version.
In TeamCity 7.x you can use "6.0" instead of <version> to get the previous version of the protocol.
In TeamCity 8.0 you can use "6.0" or "7.0" instead of <version> to get earlier versions of the protocol.
API Changes
Breaking changes in the API are described in Upgrade Notes sections of the corresponding TeamCity version documentation.
Please note that additions to the objects returned (such as new XML attributes or elements) are not considered major changes and do not cause the protocol version to increment.
Also, the endpoints marked with "Experiments" comment in application.wadl
may change without special notice in future versions.
Logging
You can get details on errors and REST request processing in logs\teamcity-rest.log
server log.
Please turn on debug logging (e.g. set Logging Preset to "debug-rest" on Administration/Diagnostics page or modify Log4J "jetbrains.buildServer.server.rest" category) to get details about each processed request.
Development links
If you need to extend the plugin with your functionality, you can base your plugin on the current REST API plugin code, but make sure that your plugin does not interfere with the bundled REST plugin. To achieve this, change the teamcity-plugin.xml
file to have a different plugin name and a different value for the "api.path" parameter. Once this is done, your patched plugin and the original REST api plugin can work in the single TeamCity installation.
TeamCity Versions Compatibility
TeamCity 5.0 and above. The plugin is branched with each TeamCity release. The corresponding plugin branch should be used.
Feedback
Feel free to ask questions and provide feedback in our plugins forum.
7 Comments
Yegor Yarko
Also a bit of details and curl command line description for build configuration editing in TW-8394
On settings passwords for VCS roots: forum thread
Yegor Yarko
If you want to execute requests to REST API inside a TeamCity build running on the same server, you can use %teamcity.serverUrl% predefined parameter to construct URL:
e.g. to pin the currently running build:
curl –request PUT %teamcity.serverUrl%/httpAuth/app/rest/builds/id:%teamcity.build.id%/pin –basic –user %teamcity_user%:%teamcity_password%
(teamcity_user and teamcity_password configuration parameters should be supplied)
Alexander Kosenkov
Is there a way to access individual tests?
Alexander V. Ilyin
Is there a way to get build details but without "changes" part? Sometime XML become too huge with included changes.
Richard Brosnahan
I didn't find a way to trigger a build here, but someone else pointed me here:
http://confluence.jetbrains.com/display/TCD7/Accessing+Server+by+HTTP
Perhaps the above method should be added to this page.
Sean
I have TeamCity 8.1.2 installed on a Windows Server 2012.
Builds work fine.
We like to use the TeamCity REST API. How do we turn the TeamCity REST API on? The
Is there a windows service that needs to be turned on for the REST API to be working?
NOTE: I am on the team city server when I try to access the TeamCity REST API..
Any help would be great...
Julia Alexandrova
Sean,
The TeamCity REST API can be accessed via http://<Your TeamCity server
URL>/app/rest (app, not api).
Please refer to the documentation for your TeamCity version.