As time goes by, you'll find that an API changes and evolves. However, when others are interacting with your API, it's important to be coherent about where certain functionality exists and maintain a clear versioning of the actions available and their characteristics.
In this recipe, we'll look at how you can implement different API-versioning techniques to help maintain consistency in your API and promote a stable longevity.
We'll be using the code we created in a previous recipe to create a web service and extend it to allow for versioning of the API we defined.
Perform the following steps:
Update the route for the API action that we added in a previous recipe; it will be used just for authentication purposes:
Router::connect('/api/access/*', array( 'controller' => 'api', 'action' => 'delegate', '', 'access' ));
Add a new route for the versioned API:
Router::connect('/api/:version/:object/:command', array( 'controller' => 'api', ...