         disconnect: action 'Disconnect PBD'
 
       server:
-        add: action 'Add server', 'server.add', argsMapper: (params) -> params
+        add: action 'Add server', 'server.add', {
+          argsMapper: (params) -> angular.copy(params)
+        }
         remove: action 'Remove server', 'server.remove', argsMapper: (id) -> {id}
         getAll: action 'Getting server', 'server.getAll'
-        set: action 'Save server', 'server.set', argsMapper: (params) -> params
+        set: action 'Save server', 'server.set', {
+          argsMapper: (params) -> angular.copy(params)
+        }
 
       task:
         cancel: action 'Cancel task', 'task.cancel', argsMapper: (id) -> {id}
 
       user:
-        create: action 'Create user', 'user.create', argsMapper: (params) -> params
+        create: action 'Create user', 'user.create', {
+          argsMapper: (params) -> angular.copy(params)
+        }
         delete: action 'Delete user', 'user.delete', argsMapper: (id) -> {id}
         getAll: action 'Getting users', 'user.getAll'
-        set: action 'Save user', 'user.set', argsMapper: (params) -> params
+        set: action 'Save user', 'user.set', {
+          argsMapper: (params) -> angular.copy(params)
+        }
 
       vm:
         convert: action 'Convert VM', 'vm.convert', {

    }

  .service 'xo', ($timeout, xoApi, notify) ->
    action = (name, method, options) ->
      unless method
        return ->

          argsMapper: (id, host_id) -> { id, host_id }
        }
        migratePool: action 'Migrate VM to another pool', 'vm.migrate_pool', {
          argsMapper: (params) -> angular.copy(params)
        }
        restart: action 'Restart VM', 'vm.restart', {
          argsMapper: (id, force = false) -> { id, force }
