Skip to content

start_reference_import_job

start_reference_import_job(
    reference_store_id: ReferenceStoreId,
    role_arn: RoleArn,
    sources: StartReferenceImportJobSourceList,
    *,
    config_overrides: Optional[OmicsClientConfig] = None,
    client_token: Optional[ClientToken] = None,
) -> StartReferenceImportJobResponse

Imports a reference genome from Amazon S3 into a specified reference store. You can have multiple reference genomes in a reference store. You can only import reference genomes one at a time into each reference store. Monitor the status of your reference import job by using the GetReferenceImportJob API operation.

Parameters:

Raises:

Source code in docs_src/capo_omics/_services/omics.py
def start_reference_import_job(
    self,
    reference_store_id: "capo_omics.types.reference_store_id.ReferenceStoreId",
    role_arn: "capo_omics.types.role_arn.RoleArn",
    sources: "capo_omics.types.start_reference_import_job_source_list.StartReferenceImportJobSourceList",
    *,
    config_overrides: Optional[OmicsClientConfig] = None,
    client_token: Optional["capo_omics.types.client_token.ClientToken"] = None,
) -> "capo_omics.types.start_reference_import_job_response.StartReferenceImportJobResponse":
    """<p>Imports a reference genome from Amazon S3 into a specified reference store. You can have multiple reference genomes in a reference store. You can only import reference genomes one at a time into each reference store. Monitor the status of your reference import job by using the <code>GetReferenceImportJob</code> API operation.</p>

    Args:
        reference_store_id: <p>The job's reference store ID.</p>
        role_arn: <p>A service role for the job.</p>
        client_token: <p>To ensure that jobs don't run multiple times, specify a unique token for each job.</p>
        sources: <p>The job's source files.</p>

    Raises:
        capo_omics.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
        capo_omics.errors.internal_server_exception.InternalServerException: <p>An unexpected error occurred. Try the request again.</p>
        capo_omics.errors.request_timeout_exception.RequestTimeoutException: <p>The request timed out.</p>
        capo_omics.errors.resource_not_found_exception.ResourceNotFoundException: <p>The target resource was not found in the current Region.</p>
        capo_omics.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>The request exceeds a service quota.</p>
        capo_omics.errors.throttling_exception.ThrottlingException: <p>The request was denied due to request throttling.</p>
        capo_omics.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints specified by an Amazon Web Services service.</p>
        capo_omics.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_omics.types.start_reference_import_job_request.StartReferenceImportJobRequest]",
    ) -> OperationResponse[
        "capo_omics.types.start_reference_import_job_response.StartReferenceImportJobResponse"
    ]:
        import capo_omics._operations.omics.start_reference_import_job

        output, http_response = (
            capo_omics._operations.omics.start_reference_import_job.start_reference_import_job(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("StartReferenceImportJob")
    )
    input_: capo_omics.types.start_reference_import_job_request.StartReferenceImportJobRequest = {
        "reference_store_id": reference_store_id,
        "role_arn": role_arn,
        "sources": sources,
    }
    if client_token is not None:
        input_["client_token"] = client_token

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