2. the thing is etags are related to objects, you want to prevent an object to be updated if the method is not idempotent (or re-fetched if cached). I'm not sure it's relevant to attach an etag to a boolean response, one option is to only return objects from the API and cast to booleans on another "resource"-like layer?