{"id":43895,"date":"2018-05-21T17:54:32","date_gmt":"2018-05-22T01:54:32","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/devops\/?p=43895"},"modified":"2019-08-19T05:22:15","modified_gmt":"2019-08-19T13:22:15","slug":"announcing-the-deprecation-of-the-wit-and-test-client-om-at-jan-1-2020-2","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/devops\/announcing-the-deprecation-of-the-wit-and-test-client-om-at-jan-1-2020-2\/","title":{"rendered":"Announcing the deprecation of the WIT and Test Client OM"},"content":{"rendered":"<p><em>Updated contents on April 2, 2019<\/em><\/p>\n<p>Since the first version of Team Foundation Server (TFS) in 2005, we have provided a set of SOAP APIs for programmatic interaction with Work Items and Tests. In recent years, REST has replaced SOAP as the preferred method for building integrations offering a simpler and more flexible programming model, support for multiple data formats, and superior performance and scalability. As our REST APIs have matured we&#8217;ve reached a point where we feel it&#8217;s time to announce the deprecation of the Work Item and Test SOAP APIs.<\/p>\n<p>Starting in Visual Studio 2019 and Azure DevOps Server 2019, all work item and test methods in the Microsoft.TeamFoundationServer.ExtendedClient are marked as obsolete. Our ExtendedClient nuget package will also be updated with the obsolete attributes.<\/p>\n<p>It is important to note that current functionality in the WIT Client will not change and is still supported as is. However, we will not be investing in the WIT Client OM as new Azure Boards and Azure Test features are released.<\/p>\n<p>If you are a consumer of these SOAP APIs we recommend to plan for a <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/devops\/integrate\/concepts\/migration-guide?view=azure-devops\">migration to REST<\/a>. The table below outlines a deprecation matrix of what you can expect across both SOAP and REST.<\/p>\n<p><strong>Azure DevOps Server<\/strong><\/p>\n<table border=\"1\" style=\"border-collapse: collapse\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" colspan=\"2\">\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        TFS 2018\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        Server 2019\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        Server 2020+\n      <\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" rowspan=\"2\">\n        SOAP\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        WIT\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#ED7D31\">\n        Deprecated\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#ED7D31\">\n        Deprecated\n      <\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        Test\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#ED7D31\">\n        Deprecated\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#ED7D31\">\n        Deprecated\n      <\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" rowspan=\"2\">\n        REST\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        WIT\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        Test\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"FFC000\">\n        Partial\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div>\n  \u00a0\n<\/div>\n<p><strong>Azure DevOps Service<\/strong><\/p>\n<table border=\"1\" style=\"border-collapse: collapse\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" colspan=\"2\">\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        Starting in 2019\n      <\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" rowspan=\"2\">\n        SOAP\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        WIT\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#ED7D31\">\n        Deprecated\n      <\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        Test\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#ED7D31\">\n        Deprecated\n      <\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" rowspan=\"2\">\n        REST\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        WIT\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\">\n        Test\n      <\/td>\n<td style=\"padding: 3px;vertical-align: middle;text-align: center\" bgcolor=\"#C5E0B3\">\n        Yes\n      <\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div>\n  \u00a0\n<\/div>\n<h2>Additional resources<\/h2>\n<ul>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/devops\/integrate\/concepts\/wit-client-om-deprecation?view=azure-devops\">WIT &amp; Test Client OM Deprecation Docs<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/rest\/api\/vsts\/\">Get started with VSTS\/TFS REST APIs<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/rest\/api\/vsts\/wit\/\">WIT REST APIs<\/a><\/li>\n<li><a href=\"https:\/\/aka.ms\/VSTSTestRest\">Test REST APIs<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/devops\/integrate\/concepts\/migration-guide?view=azure-devops\">Migration Guide<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Microsoft\/azure-devops-wit-client-om-migration-guide\">Migration Samples<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Microsoft\/vsts-dotnet-samples\">.Net Client Library Samples<\/a><\/li>\n<\/ul>\n<p>If you need help, or want to provide feedback, please reach out to this <a href=\"mailto:witclientomsupport@microsoft.com\">support alias<\/a>.<\/p>\n<h2>FAQ<\/h2>\n<p><strong>What does deprecation mean?<\/strong><\/p>\n<p><em>This means that any new features for Azure Boards or Azure Test will not be added into the Client OM. New functionality will only be supported in the REST APIs<\/em><\/p>\n<p><strong>What happens to the Version Control SDK and its SOAP APIs?<\/strong><\/p>\n<p><em>We will keep supporting the Version Control SDK, but we will end-of-life the SDK at some point in the future. If you create a new application, we recommend you start with the REST APIs. If you have existing apps using the SOAP SDK, we recommend you migrate to the REST APIs.<\/em><\/p>\n<p><strong>The SDK included an easy-to-use C# client library. Does REST API have an equivalent?<\/strong><\/p>\n<p><em>Yes, the REST APIs have a <a href=\"https:\/\/docs.microsoft.com\/en-us\/vsts\/integrate\/concepts\/dotnet-client-libraries\">.NET library<\/a> that abstract out the need to call REST APIs directly.<\/em><\/p>\n<p><strong>I&#8217;m using TFS2017 or an earlier version. Can I migrate to REST APIs?<\/strong><\/p>\n<p><em>No, older versions of TFS don&#8217;t include the full set of Work Items and Test REST APIs<\/em><\/p>\n<p><strong>Which assemblies are impacted?<\/strong><\/p>\n<p><em>Microsoft.TeamFoundation.TestImpact.Client.dll<br \/>\nMicrosoft.TeamFoundation.TestManagement.Client.dll<br \/>\nMicrosoft.TeamFoundation.TestManagement.Common.dll<br \/>\nMicrosoft.TeamFoundation.WorkItemTracking.Client.DataStoreLoader.dll<br \/>\nMicrosoft.TeamFoundation.WorkItemTracking.Client.dll<br \/>\nMicrosoft.TeamFoundation.WorkItemTracking.Client.QueryLanguage.dll<br \/>\nMicrosoft.TeamFoundation.WorkItemTracking.Common.dll<br \/>\nMicrosoft.TeamFoundation.WorkItemTracking.Proxy.dll<\/em><\/p>\n<p><strong>Which NuGet package is impacted?<\/strong><\/p>\n<p><em>These assemblies are part of the <a href=\"https:\/\/www.nuget.org\/packages\/Microsoft.TeamFoundationServer.ExtendedClient\">Microsoft.TeamFoundationServer.ExtendedClient NuGet Package<\/a>. Please be aware that this package not only contains WIT assemblies, but also provide support for Build and Code. We will keep supporting the Build and Code assemblies. Only the WIT and Test assemblies are marked as deprecated<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Updated contents on April 2, 2019 Since the first version of Team Foundation Server (TFS) in 2005, we have provided a set of SOAP APIs for programmatic interaction with Work Items and Tests. In recent years, REST has replaced SOAP as the preferred method for building integrations offering a simpler and more flexible programming model, [&hellip;]<\/p>\n","protected":false},"author":921,"featured_media":45953,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[227],"tags":[],"class_list":["post-43895","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-agile"],"acf":[],"blog_post_summary":"<p>Updated contents on April 2, 2019 Since the first version of Team Foundation Server (TFS) in 2005, we have provided a set of SOAP APIs for programmatic interaction with Work Items and Tests. In recent years, REST has replaced SOAP as the preferred method for building integrations offering a simpler and more flexible programming model, [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/43895","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/users\/921"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/comments?post=43895"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/43895\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media\/45953"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media?parent=43895"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/categories?post=43895"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/tags?post=43895"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}