I disagree to this pink box #rails Serving the same content translated with client-supplied info isn't anti REST
In specific cases, it would make sense to set the locale from client-supplied information, i.e. not from the URL . This information may come for example from the users’ preferred language (set in their browser), can be based on the users’ geographical location inferred from their IP, or users can provide it simply by choosing the locale in your application interface and saving it to their profile. This approach is more suitable for web-based applications or services, not for websites — see the box about sessions , cookies and RESTful architecture above.