updateTaskTemplate method
Updates details about a specific task template in the specified Connect Customer instance. This operation does not support partial updates. Instead it does a full update of template content.
May throw InternalServiceException.
May throw InvalidParameterException.
May throw PropertyValidationException.
May throw ResourceNotFoundException.
May throw ServiceQuotaExceededException.
May throw ThrottlingException.
Parameter instanceId :
The identifier of the Connect Customer instance. You can find
the instance ID in the Amazon Resource Name (ARN) of the instance.
Parameter taskTemplateId :
A unique identifier for the task template.
Parameter constraints :
Constraints that are applicable to the fields listed.
Parameter contactFlowId :
The identifier of the flow that runs by default when a task is created by
referencing this template.
Parameter defaults :
The default values for fields when a task is created by referencing this
template.
Parameter description :
The description of the task template.
Parameter fields :
Fields that are part of the template.
Parameter name :
The name of the task template.
Parameter selfAssignFlowId :
The ContactFlowId for the flow that will be run if this template is used
to create a self-assigned task.
Parameter status :
Marks a template as ACTIVE or INACTIVE for a
task to refer to it. Tasks can only be created from ACTIVE
templates. If a template is marked as INACTIVE, then a task
that refers to this template cannot be created.
Implementation
Future<UpdateTaskTemplateResponse> updateTaskTemplate({
required String instanceId,
required String taskTemplateId,
TaskTemplateConstraints? constraints,
String? contactFlowId,
TaskTemplateDefaults? defaults,
String? description,
List<TaskTemplateField>? fields,
String? name,
String? selfAssignFlowId,
TaskTemplateStatus? status,
}) async {
final $payload = <String, dynamic>{
if (constraints != null) 'Constraints': constraints,
if (contactFlowId != null) 'ContactFlowId': contactFlowId,
if (defaults != null) 'Defaults': defaults,
if (description != null) 'Description': description,
if (fields != null) 'Fields': fields,
if (name != null) 'Name': name,
if (selfAssignFlowId != null) 'SelfAssignFlowId': selfAssignFlowId,
if (status != null) 'Status': status.value,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri:
'/instance/${Uri.encodeComponent(instanceId)}/task/template/${Uri.encodeComponent(taskTemplateId)}',
exceptionFnMap: _exceptionFns,
);
return UpdateTaskTemplateResponse.fromJson(response);
}