Skip to content

create_sequence_store

create_sequence_store(
    name: SequenceStoreName,
    *,
    config_overrides: Optional[OmicsClientConfig] = None,
    description: Optional[SequenceStoreDescription] = None,
    sse_config: Optional[SseConfig] = None,
    tags: Optional[TagMap] = None,
    client_token: Optional[ClientToken] = None,
    fallback_location: Optional[FallbackLocation] = None,
    e_tag_algorithm_family: Optional[ETagAlgorithmFamily] = None,
    propagated_set_level_tags: Optional[PropagatedSetLevelTags] = None,
    s3_access_config: Optional[S3AccessConfig] = None,
) -> CreateSequenceStoreResponse

Creates a sequence store and returns its metadata. Sequence stores are used to store sequence data files called read sets that are saved in FASTQ, BAM, uBAM, or CRAM formats. For aligned formats (BAM and CRAM), a sequence store can only use one reference genome. For unaligned formats (FASTQ and uBAM), a reference genome is not required. You can create multiple sequence stores per region per account.

The following are optional parameters you can specify for your sequence store:

  • Use s3AccessConfig to configure your sequence store with S3 access logs (recommended).

  • Use sseConfig to define your own KMS key for encryption.

  • Use eTagAlgorithmFamily to define which algorithm to use for the HealthOmics eTag on objects.

  • Use fallbackLocation to define a backup location for storing files that have failed a direct upload.

  • Use propagatedSetLevelTags to configure tags that propagate to all objects in your store.

For more information, see Creating a HealthOmics sequence store in the Amazon Web Services HealthOmics User Guide.

Parameters:

  • name (SequenceStoreName) –

    A name for the store.

  • description (Optional[SequenceStoreDescription], default: None ) –

    A description for the store.

  • sse_config (Optional[SseConfig], default: None ) –

    Server-side encryption (SSE) settings for the store.

  • tags (Optional[TagMap], default: None ) –

    Tags for the store. You can configure up to 50 tags.

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

    An idempotency token used to dedupe retry requests so that duplicate runs are not created.

  • fallback_location (Optional[FallbackLocation], default: None ) –

    An S3 location that is used to store files that have failed a direct upload. You can add or change the fallbackLocation after creating a sequence store. This is not required if you are uploading files from a different S3 bucket.

  • e_tag_algorithm_family (Optional[ETagAlgorithmFamily], default: None ) –

    The ETag algorithm family to use for ingested read sets. The default value is MD5up. For more information on ETags, see ETags and data provenance in the Amazon Web Services HealthOmics User Guide.

  • propagated_set_level_tags (Optional[PropagatedSetLevelTags], default: None ) –

    The tags keys to propagate to the S3 objects associated with read sets in the sequence store. These tags can be used as input to add metadata to your read sets.

  • s3_access_config (Optional[S3AccessConfig], default: None ) –

    S3 access configuration parameters. This specifies the parameters needed to access logs stored in S3 buckets. The S3 bucket must be in the same region and account as the sequence store.

Raises:

Source code in docs_src/capo_omics/_services/omics.py
def create_sequence_store(
    self,
    name: "capo_omics.types.sequence_store_name.SequenceStoreName",
    *,
    config_overrides: Optional[OmicsClientConfig] = None,
    description: Optional[
        "capo_omics.types.sequence_store_description.SequenceStoreDescription"
    ] = None,
    sse_config: Optional["capo_omics.types.sse_config.SseConfig"] = None,
    tags: Optional["capo_omics.types.tag_map.TagMap"] = None,
    client_token: Optional["capo_omics.types.client_token.ClientToken"] = None,
    fallback_location: Optional[
        "capo_omics.types.fallback_location.FallbackLocation"
    ] = None,
    e_tag_algorithm_family: Optional[
        "capo_omics.types.e_tag_algorithm_family.ETagAlgorithmFamily"
    ] = None,
    propagated_set_level_tags: Optional[
        "capo_omics.types.propagated_set_level_tags.PropagatedSetLevelTags"
    ] = None,
    s3_access_config: Optional[
        "capo_omics.types.s3_access_config.S3AccessConfig"
    ] = None,
) -> "capo_omics.types.create_sequence_store_response.CreateSequenceStoreResponse":
    """<p>Creates a sequence store and returns its metadata. Sequence stores are used to store sequence data files called read sets that are saved in FASTQ, BAM, uBAM, or CRAM formats. For aligned formats (BAM and CRAM), a sequence store can only use one reference genome. For unaligned formats (FASTQ and uBAM), a reference genome is not required. You can create multiple sequence stores per region per account. </p> <p>The following are optional parameters you can specify for your sequence store:</p> <ul> <li> <p>Use <code>s3AccessConfig</code> to configure your sequence store with S3 access logs (recommended).</p> </li> <li> <p>Use <code>sseConfig</code> to define your own KMS key for encryption.</p> </li> <li> <p>Use <code>eTagAlgorithmFamily</code> to define which algorithm to use for the HealthOmics eTag on objects.</p> </li> <li> <p>Use <code>fallbackLocation</code> to define a backup location for storing files that have failed a direct upload.</p> </li> <li> <p>Use <code>propagatedSetLevelTags</code> to configure tags that propagate to all objects in your store.</p> </li> </ul> <p>For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/create-sequence-store.html">Creating a HealthOmics sequence store</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>

    Args:
        name: <p>A name for the store.</p>
        description: <p>A description for the store.</p>
        sse_config: <p>Server-side encryption (SSE) settings for the store.</p>
        tags: <p>Tags for the store. You can configure up to 50 tags.</p>
        client_token: <p>An idempotency token used to dedupe retry requests so that duplicate runs are not created.</p>
        fallback_location: <p>An S3 location that is used to store files that have failed a direct upload. You can add or change the <code>fallbackLocation</code> after creating a sequence store. This is not required if you are uploading files from a different S3 bucket.</p>
        e_tag_algorithm_family: <p>The ETag algorithm family to use for ingested read sets. The default value is MD5up. For more information on ETags, see <a href="https://docs.aws.amazon.com/omics/latest/dev/etags-and-provenance.html">ETags and data provenance</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
        propagated_set_level_tags: <p>The tags keys to propagate to the S3 objects associated with read sets in the sequence store. These tags can be used as input to add metadata to your read sets.</p>
        s3_access_config: <p>S3 access configuration parameters. This specifies the parameters needed to access logs stored in S3 buckets. The S3 bucket must be in the same region and account as the sequence store. </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.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.create_sequence_store_request.CreateSequenceStoreRequest]",
    ) -> OperationResponse[
        "capo_omics.types.create_sequence_store_response.CreateSequenceStoreResponse"
    ]:
        import capo_omics._operations.omics.create_sequence_store

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

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateSequenceStore")
    )
    input_: capo_omics.types.create_sequence_store_request.CreateSequenceStoreRequest = {
        "name": name
    }
    if description is not None:
        input_["description"] = description
    if sse_config is not None:
        input_["sse_config"] = sse_config
    if tags is not None:
        input_["tags"] = tags
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token
    if fallback_location is not None:
        input_["fallback_location"] = fallback_location
    if e_tag_algorithm_family is not None:
        input_["e_tag_algorithm_family"] = e_tag_algorithm_family
    if propagated_set_level_tags is not None:
        input_["propagated_set_level_tags"] = propagated_set_level_tags
    if s3_access_config is not None:
        input_["s3_access_config"] = s3_access_config

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