REST API Versioning

by XDK 19. July 2019 18:48


API version can be specified either in the header of the HTTP request or as a URL query parameter:

HTTP request header: Accept: application/json;api-version=1.0
Query parameter: GET {url}/{organization}/_apis/{area}/{resource}?api-version=1.

Supported versions

Product 1.0 2.0 3.0 4.0 5.0
Azure DevOps Services X X X X X
Azure DevOps Server 2019 X X X X X
Team Foundation Server 2018 X X X X -
Team Foundation Server 2017 X X X - -
Team Foundation Server 2015 X X - - -

Note : Once a preview API is deactivated, requests that specify a -preview version will be rejected (for example, 1.0-preview.1, 1.0-preview.2).



Azure DevOps Services | REST APIs | Team Foundation Server

Link to set global build retention policy for TFS Build and Release

by XDK 23. July 2017 00:06


Team Services: https://<account>

TFS 2017: http://<TFS Server>/tfs/<Collection Name>/_admin/_buildQueue

TFS 2015 Update 3: http://<TFS Server>:8080/tfs/<Collection Name>/_admin/_buildQueue

TFS 2015 RTM: http://<TFS Server>:8080/tfs/<Collection Name>/_admin/_buildQueue#_a=settings


Team Foundation Server | TFS 2015 | TFS 2017 | VNext Builds | VNext Release

TFS cannot find the restored project collection database from other TFS instance

by XDK 27. May 2017 00:13


TF254078: No attachable databases were found on the following instance of SQL Server: <Server Name>. Verify that both the name of the server and the name of the instance are correct and that the database was properly detached using the detach command in the Team Foundation Administration Console.


You may need to check whether the project collection is detached from the other TFS instance properly.

Execute the following query on the problematic project collection database where it is restored

USE <project collection database name>
SELECT name, value FROM   sys.extended_properties 

Check whether the TFS_SNAPSHOT_STATE property with the Complete value is available in the query output.

If you don’t see the TFS_SNAPSHOT_STATE property then the project collection is not detached completely from the other TFS instance properly



Team Foundation Server

How to install Cross-Platform Command-Line Client for TFS on non windows box?

by XDK 20. November 2016 01:40


1. Download the latest Cross-Platform Command-Line Client from the below link

2. Unzip the archive file that contains the client.

3. Configure your shell or system path to include the folder to which you unzipped the archive.

vi ~/.bash_profile

export PATH=$PATH:<Path of the Command-Line client unzipped folder>

4. Save and exit        

5. Execute the below command

source ~/.bash_profile

tf eula -accept

6. At command prompt, type tf, and then press the ENTER key.


7. Set the TF_AUTO_SAVE_CREDENTIALS environment variable to any value, such as "1" to save TFS credentials in the credentials cache. After you set the variable, you do not need to specify authentication information each time that you run a tf command.

8. execute the below command

vi ~/.bashrc 

9. Add the line


10. Save and exit

11. Execute the below command

    source ~/.bashrc

tf get -login:<User name>,<Password>


Team Foundation Server | TFS 2012 | TFS 2013 | TFS 2015

TF400018: The local version table for local workspace <NAME> could not be opened. The workspace version table contains as unknown scheme version.

by XDK 28. July 2016 22:36


TF400018: The local version table for local workspace <Box Name;User Name> could not be opened. The workspace version table contains as unknown scheme version.


This error may occur when the local workspace is corrupted


Delete or rename the local workspace cache folder at "C:\ProgramData\Microsoft\Team Foundation"


Team Foundation Server | TFS 2012 | TFS 2013

How to make a valued field read only or non editable after the first save of a work item?

by XDK 21. June 2016 20:47


I got a requirement to add a custom field for initial estimate which is required and should be read only or non editable after creating the work item.


Solution is to add a FROZEN rule along with REQUIRED rule as follow

<FIELD name="Inital Estimate" refname="Custom.InitalEstimate" type="Double" reportable="Measures">

   <HELPTEXT>Inital estimate for this task</HELPTEXT>

   <FROZEN />




FROZEN - Prevents users from changing the value of a field once it contains a value. As soon as a user saves the work item with a value in that field, the value can no longer be modified.

REQUIRED - Requires a user to specify a value for the field. Users cannot save a work item until they have assigned values to all required fields.

Tags: ,

Team Foundation Server

Server was unable to process request. The file exists.

by XDK 29. April 2016 08:07


Exception Message: Server was unable to process request. ---> The file exists.


The above exception may occur while saving the work items


Clear the TFS server cache.


Team Foundation Server

Load Test Could not write to file on controller machine error 112

by XDK 29. April 2016 06:37



This error may occur when the Test Controller and Agents runs out disk space. Try to clean up the disk to gain free space or add extra space to the drive. 

Tags: , , ,

Team Foundation Server | Web Performance & Load Tests | TFS 2012 | TFS 2013 | TFS 2015

How to build Visual Studio 2012 later versions solution in TFS 2012 build environment?

by XDK 22. April 2016 09:07


You can build the Visual Studio 2012 later versions in TFS 2012 build environment by configurating the 'ToolPath' property in the TFS 2012 build xaml file.


Open the TFS 2012 build xaml file with the same Visual Studio version (i.e VS 2012) to edit the 'ToolPath' property as below and save the xaml to build.

Visual Studio 2012 ToolPath

On 32-bit machines : C:\Program Files\MSBuild\12.0\bin
On 64-bit machines : C:\Program Files (x86)\MSBuild\12.0\bin

Visual Studio 2015 ToolPath
On 32-bit machines : C:\Program Files\MSBuild\14.0\bin
On 64-bit machines : C:\Program Files (x86)\MSBuild\14.0\bin


Tags: , , , ,

Team Build | Team Foundation Server | TFS 2012 | TFS 2013 | TFS 2015

XML parsing : illegal xml character migration error

by XDK 15. March 2016 13:09


Microsoft.TeamFoundation.Migration.Toolkit.ErrorManagement.MissingErrorRouterException: Runtime error does not meet the error routine policy and there is no conflict manager to log a conflict. ---> System.Data.UpdateException: An error occurred while updating the entries. See the InnerException for details. ---> System.Data.SqlClient.SqlException: XML parsing: line 1, character 78999, illegal xml character


This error might occur when stacktraces are pasted directly into the HTML fields in the work item. In my case, the stacktraces with illegal characters were in Repro Steps field.


I ignored the work items which were causing the failure using the below clause in the migration query.

And processed the ignored work items manually.


Team Foundation Server


The information provided here is based on my expreriences, troubleshooting and online/offline findings. It can be used as is on your own risk without any warranties and I impose no rights.

About the author

My name is Xavier Dilip Kumar Jayaraj and I am a Software Configuration Management Engineer with a background in application development, Build & packaging using Install Shield.

Profile in LinkedIn , PCEP-Certified , Azure-DevOps-C1

DevOps Tools

ALM tools:
Azure DevOps
IBM Rational
CA Agile Central-Rally
CollabNet VersionOne

Configuration tools:
• Puppet
• AWS OpsWorks
• Ansible

Build automation tools:
Apache Ant 
Apache Maven

Continuous Integration tools:

Testing tools:

Version control system tools:
Team Foundation Server

Code review tools:
Bitbucket Server

Continuous Delivery/release management tools:
XL Release
Serena Release
Octopus Deploy

Quotes I Like

"Failure will never overtake me if my determination to succeed is strong enough."  - Dr. APJ. Abdul Kalam

"Always be yourself, express yourself, have faith in yourself, do not go out and look for a successful personality and duplicate it." - Bruce Lee

"Technology is just a tool. In terms of getting the kids working together and motivating them, the teacher is the most important." - Bill Gates

"Innovation distinguishes between a leader and a follower." - Steve Jobs

Knowledge Base Articles