Skip to content

update_queue_outbound_caller_config async

update_queue_outbound_caller_config(
    instance_id: InstanceId,
    queue_id: QueueId,
    outbound_caller_config: OutboundCallerConfig,
    *,
    config_overrides: Optional[AsyncConnectClientConfig] = None,
) -> None

Updates the outbound caller ID name, number, and outbound whisper flow for a specified queue.

  • If the phone number is claimed to a traffic distribution group that was created in the same Region as the Connect Customer instance where you are calling this API, then you can use a full phone number ARN or a UUID for OutboundCallerIdNumberId. However, if the phone number is claimed to a traffic distribution group that is in one Region, and you are calling this API from an instance in another Amazon Web Services Region that is associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided in this scenario, you will receive a ResourceNotFoundException.

  • Only use the phone number ARN format that doesn't contain instance in the path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This is the same ARN format that is returned when you call the ListPhoneNumbersV2 API.

  • If you plan to use IAM policies to allow/deny access to this API for phone number resources claimed to a traffic distribution group, see Allow or Deny queue API actions for phone numbers in a replica Region.

Parameters:

  • instance_id (InstanceId) –

    The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

  • queue_id (QueueId) –

    The identifier for the queue.

  • outbound_caller_config (OutboundCallerConfig) –

    The outbound caller ID name, number, and outbound whisper flow.

Raises:

Source code in docs_src/capo_connect/_services/async_connect.py
async def update_queue_outbound_caller_config(
    self,
    instance_id: "capo_connect.types.instance_id.InstanceId",
    queue_id: "capo_connect.types.queue_id.QueueId",
    outbound_caller_config: "capo_connect.types.outbound_caller_config.OutboundCallerConfig",
    *,
    config_overrides: Optional[AsyncConnectClientConfig] = None,
) -> None:
    """<p>Updates the outbound caller ID name, number, and outbound whisper flow for a specified queue.</p> <important> <ul> <li> <p>If the phone number is claimed to a traffic distribution group that was created in the same Region as the Connect Customer instance where you are calling this API, then you can use a full phone number ARN or a UUID for <code>OutboundCallerIdNumberId</code>. However, if the phone number is claimed to a traffic distribution group that is in one Region, and you are calling this API from an instance in another Amazon Web Services Region that is associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided in this scenario, you will receive a <code>ResourceNotFoundException</code>.</p> </li> <li> <p>Only use the phone number ARN format that doesn't contain <code>instance</code> in the path, for example, <code>arn:aws:connect:us-east-1:1234567890:phone-number/uuid</code>. This is the same ARN format that is returned when you call the <a href="https://docs.aws.amazon.com/connect/latest/APIReference/API_ListPhoneNumbersV2.html">ListPhoneNumbersV2</a> API.</p> </li> <li> <p>If you plan to use IAM policies to allow/deny access to this API for phone number resources claimed to a traffic distribution group, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/security_iam_resource-level-policy-examples.html#allow-deny-queue-actions-replica-region">Allow or Deny queue API actions for phone numbers in a replica Region</a>.</p> </li> </ul> </important>

    Args:
        instance_id: <p>The identifier of the Connect Customer instance. You can <a href="https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html">find the instance ID</a> in the Amazon Resource Name (ARN) of the instance.</p>
        queue_id: <p>The identifier for the queue.</p>
        outbound_caller_config: <p>The outbound caller ID name, number, and outbound whisper flow.</p>

    Raises:
        capo_connect.errors.internal_service_exception.InternalServiceException: <p>Request processing failed because of an error or failure with the service.</p>
        capo_connect.errors.invalid_parameter_exception.InvalidParameterException: <p>One or more of the specified parameters are not valid.</p>
        capo_connect.errors.invalid_request_exception.InvalidRequestException: <p>The request is not valid.</p>
        capo_connect.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource was not found.</p>
        capo_connect.errors.throttling_exception.ThrottlingException: <p>The throttling limit has been exceeded.</p>
        capo_connect.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_connect.types.update_queue_outbound_caller_config_request.UpdateQueueOutboundCallerConfigRequest]",
    ) -> AsyncOperationResponse[None]:
        import capo_connect._operations.amazon_connect_service.update_queue_outbound_caller_config

        (
            output,
            http_response,
        ) = await capo_connect._operations.amazon_connect_service.update_queue_outbound_caller_config.async_update_queue_outbound_caller_config(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateQueueOutboundCallerConfig")
    )
    input_: capo_connect.types.update_queue_outbound_caller_config_request.UpdateQueueOutboundCallerConfigRequest = {
        "instance_id": instance_id,
        "queue_id": queue_id,
        "outbound_caller_config": outbound_caller_config,
    }

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output