code: def update(self, attributes=values.unset, assignment_status=values.unset,
                 reason=values.unset, priority=values.unset,
                 task_channel=values.unset):
          
          data = values.of({
              'Attributes': attributes,
              'AssignmentStatus': assignment_status,
              'Reason': reason,
              'Priority': priority,
              'TaskChannel': task_channel,
          })
  
          payload = self._version.update(
              'POST',
              self._uri,
              data=data,
          )
  
          return TaskInstance(
              self._version,
              payload,
              workspace_sid=self._solution['workspace_sid'],
              sid=self._solution['sid'],
          )
docs: Update the TaskInstance
  
          :param unicode attributes: The user-defined JSON data describing the custom attributes of this task.
          :param TaskInstance.Status assignment_status: A 'pending' or 'reserved' Task may be canceled by posting AssignmentStatus='canceled'.
          :param unicode reason: This is only required if the Task is canceled or completed.
          :param unicode priority: Override priority for the Task.
          :param unicode task_channel: The task_channel
  
          :returns: Updated TaskInstance
          :rtype: twilio.rest.taskrouter.v1.workspace.task.TaskInstance