Gaetano: I quite like having the version in the URL but that depends a lot on what kind of service you designed as to what makes most sense. I like major.minor as a naming scheme but it is probably overkill as really APIs shouldn’t be changing a lot.

Chris: Whether you support multiple versions of the API is an application decision – knowing which version the user expected means you can identify who is using which version, and either support them or perhaps notify them to upgrade – or run one testing version and one live. It just adds in the extra possibilities for later, how you use those will depend on your requirements.