Skip to content

replicate_instance

replicate_instance(
    instance_id: ACGRInstanceIdOrArn,
    replica_region: AwsRegion,
    *,
    config_overrides: Optional[ConnectClientConfig] = None,
    client_token: Optional[ClientToken] = None,
    replica_alias: Optional[DirectoryAlias] = None,
) -> ReplicateInstanceResponse

Replicates an Connect Customer instance in the specified Amazon Web Services Region and copies configuration information for Connect Customer resources across Amazon Web Services Regions.

For more information about replicating an Connect Customer instance, see Create a replica of your existing Connect Customer instance in the Connect Customer Administrator Guide.

Parameters:

  • instance_id (ACGRInstanceIdOrArn) –

    The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance. You can provide the InstanceId, or the entire ARN.

  • replica_region (AwsRegion) –

    The Amazon Web Services Region where to replicate the Connect Customer instance.

  • client_token (Optional[ClientToken], default: None ) –

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

  • replica_alias (Optional[DirectoryAlias], default: None ) –

    The alias for the replicated instance. The ReplicaAlias must be unique.

Raises:

Source code in docs_src/capo_connect/_services/connect.py
def replicate_instance(
    self,
    instance_id: "capo_connect.types.acgr_instance_id_or_arn.ACGRInstanceIdOrArn",
    replica_region: "capo_connect.types.aws_region.AwsRegion",
    *,
    config_overrides: Optional[ConnectClientConfig] = None,
    client_token: Optional["capo_connect.types.client_token.ClientToken"] = None,
    replica_alias: Optional[
        "capo_connect.types.directory_alias.DirectoryAlias"
    ] = None,
) -> "capo_connect.types.replicate_instance_response.ReplicateInstanceResponse":
    """<p>Replicates an Connect Customer instance in the specified Amazon Web Services Region and copies configuration information for Connect Customer resources across Amazon Web Services Regions. </p> <p>For more information about replicating an Connect Customer instance, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/create-replica-connect-instance.html">Create a replica of your existing Connect Customer instance</a> in the <i>Connect Customer Administrator Guide</i>.</p>

    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. You can provide the <code>InstanceId</code>, or the entire ARN.</p>
        replica_region: <p>The Amazon Web Services Region where to replicate the Connect Customer instance.</p>
        client_token: <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href="https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/">Making retries safe with idempotent APIs</a>.</p>
        replica_alias: <p>The alias for the replicated instance. The <code>ReplicaAlias</code> must be unique.</p>

    Raises:
        capo_connect.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient permissions to perform this action.</p>
        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_request_exception.InvalidRequestException: <p>The request is not valid.</p>
        capo_connect.errors.resource_conflict_exception.ResourceConflictException: <p>A resource already has that name.</p>
        capo_connect.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource was not found.</p>
        capo_connect.errors.resource_not_ready_exception.ResourceNotReadyException: <p>The resource is not ready.</p>
        capo_connect.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>The service quota has been exceeded.</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.
    """

    def _handler(
        req: "OperationRequest[capo_connect.types.replicate_instance_request.ReplicateInstanceRequest]",
    ) -> OperationResponse[
        "capo_connect.types.replicate_instance_response.ReplicateInstanceResponse"
    ]:
        import capo_connect._operations.amazon_connect_service.replicate_instance

        output, http_response = (
            capo_connect._operations.amazon_connect_service.replicate_instance.replicate_instance(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    def _redact_input(
        input_: "capo_connect.types.replicate_instance_request.ReplicateInstanceRequest",
    ) -> dict[str, Any]:
        import capo_connect.types.replicate_instance_request

        return capo_connect.types.replicate_instance_request.redact_sensitive(
            input_
        )

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging("ReplicateInstance", redact_input=_redact_input),
    )
    input_: capo_connect.types.replicate_instance_request.ReplicateInstanceRequest = {
        "instance_id": instance_id,
        "replica_region": replica_region,
    }
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token
    if replica_alias is not None:
        input_["replica_alias"] = replica_alias

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output