associateContactWithUser method
Associates a queued contact with an agent.
Use cases
Following are common uses cases for this API:
- Programmatically assign queued contacts to available users.
-
Leverage the IAM context key
connect:PreferredUserArnto restrict contact association to specific preferred user.
- Use this API with chat, email, and task contacts. It does not support voice contacts.
- Use it to associate contacts with users regardless of their current state, including custom states. Ensure your application logic accounts for user availability before making associations.
-
It honors the IAM context key
connect:PreferredUserArnto prevent unauthorized contact associations. -
It respects the IAM context key
connect:PreferredUserArnto enforce authorization controls and prevent unauthorized contact associations. Verify that your IAM policies are properly configured to support your intended use cases. - The service quota Queues per routing profile per instance applies to manually assigned queues, too. For more information about this quota, see Connect Customer quotas in the Connect Customer Administrator Guide.
May throw AccessDeniedException.
May throw InternalServiceException.
May throw InvalidParameterException.
May throw InvalidRequestException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
Parameter contactId :
The identifier of the contact in this instance of Connect Customer.
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 userId :
The identifier for the user. This can be the ID or the ARN of the user.
Implementation
Future<void> associateContactWithUser({
required String contactId,
required String instanceId,
required String userId,
}) async {
final $payload = <String, dynamic>{
'UserId': userId,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri:
'/contacts/${Uri.encodeComponent(instanceId)}/${Uri.encodeComponent(contactId)}/associate-user',
exceptionFnMap: _exceptionFns,
);
}