I do hope this question is too subjective, as I am actually looking for a "best practice" that makes sense. However, the question is a bit more broad than just this case.
Lets say I have a view flag on an object (seen or not). When this object is seen, I see three options to make it true:
UPDATE
call GetObject
method, we automatically set "seen" to trueSetToSeen
which the consumer is responsible to setWhat is the favorable approach here?
for me it depends on who uses this flag.
If it is the client, then the client should update the object (maybe "seen" could read as "displayed to the user") like PUT /object/{id}/seen
.
If it this is only for the server and read as "displayed to the client", then the server should update if the object was served.