How to provide version upgrades on web-services? RRS feed

  • Question

  • Hi,

    We have a web-service that is currently used by over 500+ clients and exposes some of the method in following format -

    public TradeResponse CreateTrade( TradeRequest trade)


    return response;


    We have to add new properties (optional initially, mandatory after some time period that can be controlled by a switch) in TradeRequest and TradeResponse object.

    What should be the best practices to provide this version upgrade to clients so that the existing ones don't break their current implement untill the given notice? We have two identified ways to make such changes -

    a. Since these changes are backward compatible untill a certain period, direct deploy the new implementation on the same URL.

    b. Create a brand new URL and deploy new implementation on it. Keep old URL alive till notice period to support existing clients, thereafter discontinue this.

    Can someone please help on identifying the best practices to follow for web-services version upgrade?  It would be really very helpfull if there you can also point on some articles or white-papers as well.

    Tuesday, July 16, 2013 5:58 PM