def update(self, attributes=values.unset, assignment_status=values.unset,<EOL>reason=values.unset, priority=values.unset,<EOL>task_channel=values.unset):
data = values.of({<EOL>'<STR_LIT>': attributes,<EOL>'<STR_LIT>': assignment_status,<EOL>'<STR_LIT>': reason,<EOL>'<STR_LIT>': priority,<EOL>'<STR_LIT>': task_channel,<EOL>})<EOL>payload = self._version.update(<EOL>'<STR_LIT:POST>',<EOL>self._uri,<EOL>data=data,<EOL>)<EOL>return TaskInstance(<EOL>self._version,<EOL>payload,<EOL>workspace_sid=self._solution['<STR_LIT>'],<EOL>sid=self._solution['<STR_LIT>'],<EOL>)<EOL>
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