Web Service Compatibility

Hopefully you already know that Vault 2012 clients can access the Vault 2013 server without the need for any sort of software update.  This compatibility feature works at the web service API level.  Basically, anything that uses the Vault 2012 APIs can connect to Vault 2013.

What is compatible with Vault 2013 server:

  • 2013 applications.
  • 2012 CAD clients such as AutoCAD, Inventor and Civil 3D.
  • Vault 2012 clients such as Vault Explorer, Autoloader and JobProcessor.
  • Any standalone application that calls the 2012 web services.

What is not compatible:

  • 2013 clients are not compatible with the Vault 2012 server.  The compatibility only works one way.
  • Anything that is a 2012 plug-in will not be compatible with the 2013 clients.  This includes custom commands, job handlers, and event handlers.
  • Anything that uses Vault 2012 API components outside the Autodesk.Connectivity.WebServices assembly may not be compatible in Vault 2013.

Architecture:

An API is basically an interface to an application’s functionality.  For Vault 2013, the server exposes two interfaces: the Vault 2012 set of web services and the Vault 2013 set of services.

It’s pretty straightforward.  The services are distinguished by the service URL.  Starting in 2013, there is a version component to the service URL. 
For example:
2012 URL:  http://localhost/AutodeskDM/Services/DocumentService.asmx
2013 URL:  http://localhost/AutodeskDM/Services/v17/DocumentService.asmx

If you are using Autodesk.Connectivity.WebServices.dll, it will only communicate with the web services interface for the corresponding version.  So the 2012 DLL (16.0.x.x) will communicate only with the 2012 web services, and the 2013 DLL(17.0.x.x) will communicate only with the 2013 web services.


Best Practices:

  • Testing is still needed! 
    Don’t assume that everything works perfectly.
  • Code to only 1 API version. 
    For example, don’t check out with the 2012 API and check in with the 2013 API.
  • If you are building a 2013 client, use the 2013 services.
  • Don’t hard-code data that may be version specific.  
    For example, don’t write logic around the server’s version number.
  • Assume that your client may be used with a future Vault server.  However, Autodesk makes no guarantee that Vault 2014 will still have this compatibility feature.


Comments

Leave a Reply

Discover more from Autodesk Developer Blog

Subscribe now to keep reading and get access to the full archive.

Continue reading