If the following following adds action to the querystring then I think that's your answer:
- modelInstance.save({action: 'publish'})
Otherwise can't you just define update as a function as such:
- update: function(params) {return can.ajax({url: '/api/documents/{id}',type: 'PUT',data: params,dataType: 'json'});}