Should an API be aware of a client version?The idea of that really goes against the grain for me, but it seems like it is being pushed for in my current project.Am I wrong? Can I get some reasons for or against this that I can present or understand why it might be good.The API is a RESTful API.
Should an API be aware of client versions?
api;rest;api design
An API should be as consistent as possible.  Making the same call to the API should always do the same thing.  Responding differently based on the client version would be unexpected and confusing.  It may lead to subtle errors, as someone who upgrades a client would get different results and not know why.Of course, you can make functions that provide different levels of data available to meet different needs.  But they should be offered to everyone, and the users of the API can decide what level they want.