Skip to content

AWS.Omics reference

Source: src/AWS/Omics/AnnotationStore.ts

An Amazon HealthOmics annotation store — a container for genome annotation data (GFF, TSV, or VCF) aligned to a reference genome.

An annotation store name is auto-generated from the app, stage, and logical ID unless you provide one. The storeFormat, reference, storeOptions, and sseConfig are immutable — changing any of them replaces the store. description is updated in place.

AnnotationStore: Creating an Annotation Store

Section titled “AnnotationStore: Creating an Annotation Store”

VCF Annotation Store

import * as Omics from "alchemy/AWS/Omics";
const store = yield* Omics.AnnotationStore("Annotations", {
storeFormat: "VCF",
reference: {
referenceArn: "arn:aws:omics:us-east-1:123456789012:referenceStore/1234567890/reference/0987654321",
},
});

TSV Annotation Store

const store = yield* Omics.AnnotationStore("Annotations", {
storeFormat: "TSV",
storeOptions: {
tsvStoreOptions: { annotationType: "GENERIC" },
},
});

Source: src/AWS/Omics/BatchDeleteReadSet.ts

Runtime binding for omics:BatchDeleteReadSet.

Bind this operation to a SequenceStore to get a callable that deletes a batch of read sets from the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.BatchDeleteReadSetHttp).

// init
const batchDeleteReadSet = yield* AWS.Omics.BatchDeleteReadSet(store);
// runtime
const result = yield* batchDeleteReadSet({});

Source: src/AWS/Omics/CancelRun.ts

Runtime binding for omics:CancelRun.

An account-level run-control operation (no resource argument) that cancels an in-progress run. Provide the implementation with Effect.provide(AWS.Omics.CancelRunHttp).

// init — account-level binding takes no resource
const cancelRun = yield* AWS.Omics.CancelRun();
// runtime
const result = yield* cancelRun({ id: runId });

Source: src/AWS/Omics/DeleteReference.ts

Runtime binding for omics:DeleteReference.

Bind this operation to a ReferenceStore to get a callable that deletes a reference genome from the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.DeleteReferenceHttp).

// init
const deleteReference = yield* AWS.Omics.DeleteReference(store);
// runtime
const result = yield* deleteReference({});

Source: src/AWS/Omics/DeleteRun.ts

Runtime binding for omics:DeleteRun.

An account-level run-control operation (no resource argument) that deletes a completed run. Provide the implementation with Effect.provide(AWS.Omics.DeleteRunHttp).

// init — account-level binding takes no resource
const deleteRun = yield* AWS.Omics.DeleteRun();
// runtime
const result = yield* deleteRun({ id: runId });

Source: src/AWS/Omics/GetReadSet.ts

Runtime binding for omics:GetReadSet.

Bind this operation to a SequenceStore to get a callable that streams the bytes of a read set file part — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.GetReadSetHttp).

// init
const getReadSet = yield* AWS.Omics.GetReadSet(store);
// runtime
const result = yield* getReadSet({});

Source: src/AWS/Omics/GetReadSetActivationJob.ts

Runtime binding for omics:GetReadSetActivationJob.

Bind this operation to a SequenceStore to get a callable that reads the status of a read-set activation job — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.GetReadSetActivationJobHttp).

// init
const getReadSetActivationJob = yield* AWS.Omics.GetReadSetActivationJob(store);
// runtime
const result = yield* getReadSetActivationJob({});

Source: src/AWS/Omics/GetReadSetExportJob.ts

Runtime binding for omics:GetReadSetExportJob.

Bind this operation to a SequenceStore to get a callable that reads the status of a read-set export job — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.GetReadSetExportJobHttp).

// init
const getReadSetExportJob = yield* AWS.Omics.GetReadSetExportJob(store);
// runtime
const result = yield* getReadSetExportJob({});

Source: src/AWS/Omics/GetReadSetImportJob.ts

Runtime binding for omics:GetReadSetImportJob.

Bind this operation to a SequenceStore to get a callable that reads the status of a read-set import job — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.GetReadSetImportJobHttp).

// init
const getReadSetImportJob = yield* AWS.Omics.GetReadSetImportJob(store);
// runtime
const result = yield* getReadSetImportJob({});

Source: src/AWS/Omics/GetReadSetMetadata.ts

Runtime binding for omics:GetReadSetMetadata.

Bind this operation to a SequenceStore to get a callable that reads the metadata of a read set — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.GetReadSetMetadataHttp).

// init
const getReadSetMetadata = yield* AWS.Omics.GetReadSetMetadata(store);
// runtime
const result = yield* getReadSetMetadata({});

Source: src/AWS/Omics/GetReference.ts

Runtime binding for omics:GetReference.

Bind this operation to a ReferenceStore to get a callable that streams the bytes of a reference file part — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.GetReferenceHttp).

// init
const getReference = yield* AWS.Omics.GetReference(store);
// runtime
const result = yield* getReference({});

Source: src/AWS/Omics/GetReferenceImportJob.ts

Runtime binding for omics:GetReferenceImportJob.

Bind this operation to a ReferenceStore to get a callable that reads the status of a reference import job — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.GetReferenceImportJobHttp).

// init
const getReferenceImportJob = yield* AWS.Omics.GetReferenceImportJob(store);
// runtime
const result = yield* getReferenceImportJob({});

Source: src/AWS/Omics/GetReferenceMetadata.ts

Runtime binding for omics:GetReferenceMetadata.

Bind this operation to a ReferenceStore to get a callable that reads the metadata of a reference genome — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.GetReferenceMetadataHttp).

// init
const getReferenceMetadata = yield* AWS.Omics.GetReferenceMetadata(store);
// runtime
const result = yield* getReferenceMetadata({});

Source: src/AWS/Omics/GetRun.ts

Runtime binding for omics:GetRun.

An account-level run-control operation (no resource argument) that reads the status and details of a run. Provide the implementation with Effect.provide(AWS.Omics.GetRunHttp).

// init — account-level binding takes no resource
const getRun = yield* AWS.Omics.GetRun();
// runtime
const result = yield* getRun({ id: runId });

Source: src/AWS/Omics/GetRunTask.ts

Runtime binding for omics:GetRunTask.

An account-level run-control operation (no resource argument) that reads the status of a single task within a run. Provide the implementation with Effect.provide(AWS.Omics.GetRunTaskHttp).

// init — account-level binding takes no resource
const getRunTask = yield* AWS.Omics.GetRunTask();
// runtime
const result = yield* getRunTask({ id: runId });

Source: src/AWS/Omics/ListAnnotationImportJobs.ts

Runtime binding for omics:ListAnnotationImportJobs.

An account-level operation (no resource argument) that lists annotation import jobs, optionally filtered by store name or status. Provide the implementation with Effect.provide(AWS.Omics.ListAnnotationImportJobsHttp).

ListAnnotationImportJobs: Annotation Imports

Section titled “ListAnnotationImportJobs: Annotation Imports”
// init — account-level binding takes no resource
const listImports = yield* AWS.Omics.ListAnnotationImportJobs();
// runtime
const result = yield* listImports({});

Source: src/AWS/Omics/ListReadSetActivationJobs.ts

Runtime binding for omics:ListReadSetActivationJobs.

Bind this operation to a SequenceStore to get a callable that lists the read-set activation jobs for the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.ListReadSetActivationJobsHttp).

// init
const listReadSetActivationJobs = yield* AWS.Omics.ListReadSetActivationJobs(store);
// runtime
const result = yield* listReadSetActivationJobs({});

Source: src/AWS/Omics/ListReadSetExportJobs.ts

Runtime binding for omics:ListReadSetExportJobs.

Bind this operation to a SequenceStore to get a callable that lists the read-set export jobs for the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.ListReadSetExportJobsHttp).

// init
const listReadSetExportJobs = yield* AWS.Omics.ListReadSetExportJobs(store);
// runtime
const result = yield* listReadSetExportJobs({});

Source: src/AWS/Omics/ListReadSetImportJobs.ts

Runtime binding for omics:ListReadSetImportJobs.

Bind this operation to a SequenceStore to get a callable that lists the read-set import jobs for the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.ListReadSetImportJobsHttp).

// init
const listReadSetImportJobs = yield* AWS.Omics.ListReadSetImportJobs(store);
// runtime
const result = yield* listReadSetImportJobs({});

Source: src/AWS/Omics/ListReadSets.ts

Runtime binding for omics:ListReadSets.

Bind this operation to a SequenceStore to get a callable that lists the read sets in the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.ListReadSetsHttp).

// init
const listReadSets = yield* AWS.Omics.ListReadSets(store);
// runtime
const result = yield* listReadSets({});

Source: src/AWS/Omics/ListReferenceImportJobs.ts

Runtime binding for omics:ListReferenceImportJobs.

Bind this operation to a ReferenceStore to get a callable that lists the reference import jobs for the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.ListReferenceImportJobsHttp).

// init
const listReferenceImportJobs = yield* AWS.Omics.ListReferenceImportJobs(store);
// runtime
const result = yield* listReferenceImportJobs({});

Source: src/AWS/Omics/ListReferences.ts

Runtime binding for omics:ListReferences.

Bind this operation to a ReferenceStore to get a callable that lists the reference genomes in the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.ListReferencesHttp).

// init
const listReferences = yield* AWS.Omics.ListReferences(store);
// runtime
const result = yield* listReferences({});

Source: src/AWS/Omics/ListRuns.ts

Runtime binding for omics:ListRuns.

An account-level run-control operation (no resource argument) that lists the workflow runs in the account. Provide the implementation with Effect.provide(AWS.Omics.ListRunsHttp).

// init — account-level binding takes no resource
const listRuns = yield* AWS.Omics.ListRuns();
// runtime
const result = yield* listRuns({ id: runId });

Source: src/AWS/Omics/ListRunTasks.ts

Runtime binding for omics:ListRunTasks.

An account-level run-control operation (no resource argument) that lists the tasks within a run. Provide the implementation with Effect.provide(AWS.Omics.ListRunTasksHttp).

// init — account-level binding takes no resource
const listRunTasks = yield* AWS.Omics.ListRunTasks();
// runtime
const result = yield* listRunTasks({ id: runId });

Source: src/AWS/Omics/ListVariantImportJobs.ts

Runtime binding for omics:ListVariantImportJobs.

An account-level operation (no resource argument) that lists variant import jobs, optionally filtered by store name or status. Provide the implementation with Effect.provide(AWS.Omics.ListVariantImportJobsHttp).

// init — account-level binding takes no resource
const listImports = yield* AWS.Omics.ListVariantImportJobs();
// runtime
const result = yield* listImports({});

Source: src/AWS/Omics/ReferenceStore.ts

An Amazon HealthOmics reference store — a container for reference genomes that read sets are aligned against.

A reference store name is auto-generated from the app, stage, and logical ID unless you provide one. HealthOmics offers no update-store API, so any change to name, description, or sseConfig replaces the store. A store can only be deleted once it contains no reference genomes.

ReferenceStore: Creating a Reference Store

Section titled “ReferenceStore: Creating a Reference Store”

Basic Reference Store

import * as Omics from "alchemy/AWS/Omics";
const store = yield* Omics.ReferenceStore("References");

Named Reference Store with Description

const store = yield* Omics.ReferenceStore("References", {
name: "human-references",
description: "GRCh38 reference genomes",
});
const store = yield* Omics.ReferenceStore("References", {
sseConfig: {
type: "KMS",
keyArn: "arn:aws:kms:us-east-1:123456789012:key/abc-123",
},
});

Source: src/AWS/Omics/RunGroup.ts

An Amazon HealthOmics run group — a resource-limit envelope for workflow runs. A run group caps the vCPUs, GPUs, concurrent runs, and per-run duration for the workflow runs assigned to it.

A run group name is auto-generated from the app, stage, and logical ID unless you provide one. All limits are mutable in place.

Basic Run Group

import * as Omics from "alchemy/AWS/Omics";
const group = yield* Omics.RunGroup("Batch");

Run Group with Limits

const group = yield* Omics.RunGroup("Batch", {
name: "nightly-batch",
maxCpus: 100,
maxRuns: 10,
maxDuration: "10 hours",
});

Source: src/AWS/Omics/SequenceStore.ts

An Amazon HealthOmics sequence store — a container for genomics read sets (FASTQ, BAM, CRAM).

A sequence store name is auto-generated from the app, stage, and logical ID unless you provide one. HealthOmics offers no update-store API, so any change to an immutable property (name, description, encryption, fallback location, ETag algorithm) replaces the store. A store can only be deleted once it contains no read sets.

Basic Sequence Store

import * as Omics from "alchemy/AWS/Omics";
const store = yield* Omics.SequenceStore("Reads");

Sequence Store with Fallback Location

const store = yield* Omics.SequenceStore("Reads", {
name: "sample-reads",
fallbackLocation: "s3://my-bucket/omics-fallback/",
eTagAlgorithmFamily: "SHA256up",
});
const store = yield* Omics.SequenceStore("Reads", {
sseConfig: {
type: "KMS",
keyArn: "arn:aws:kms:us-east-1:123456789012:key/abc-123",
},
});

Source: src/AWS/Omics/StartAnnotationImportJob.ts

Runtime binding for omics:StartAnnotationImportJob.

Bind this operation to an AnnotationStore to get a callable that starts a job importing annotation files (TSV/VCF/GFF) into the store — the store name is injected automatically as destinationName and the action is granted on the bound resource (with iam:PassRole for the HealthOmics service role). Provide the implementation with Effect.provide(AWS.Omics.StartAnnotationImportJobHttp).

StartAnnotationImportJob: Annotation Imports

Section titled “StartAnnotationImportJob: Annotation Imports”
// init
const startImport = yield* AWS.Omics.StartAnnotationImportJob(store);
// runtime
const result = yield* startImport({
roleArn,
items: [{ source: "s3://my-bucket/annotations.tsv" }],
});

Source: src/AWS/Omics/StartReadSetActivationJob.ts

Runtime binding for omics:StartReadSetActivationJob.

Bind this operation to a SequenceStore to get a callable that starts a job that activates archived read sets — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.StartReadSetActivationJobHttp).

// init
const startReadSetActivationJob = yield* AWS.Omics.StartReadSetActivationJob(store);
// runtime
const result = yield* startReadSetActivationJob({});

Source: src/AWS/Omics/StartReadSetExportJob.ts

Runtime binding for omics:StartReadSetExportJob.

Bind this operation to a SequenceStore to get a callable that starts a job that exports read sets to S3 — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.StartReadSetExportJobHttp).

// init
const startReadSetExportJob = yield* AWS.Omics.StartReadSetExportJob(store);
// runtime
const result = yield* startReadSetExportJob({});

Source: src/AWS/Omics/StartReadSetImportJob.ts

Runtime binding for omics:StartReadSetImportJob.

Bind this operation to a SequenceStore to get a callable that starts an import job that ingests read sets into the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.StartReadSetImportJobHttp).

// init
const startReadSetImportJob = yield* AWS.Omics.StartReadSetImportJob(store);
// runtime
const result = yield* startReadSetImportJob({});

Source: src/AWS/Omics/StartReferenceImportJob.ts

Runtime binding for omics:StartReferenceImportJob.

Bind this operation to a ReferenceStore to get a callable that starts a job that imports reference genomes into the store — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.StartReferenceImportJobHttp).

// init
const startReferenceImportJob = yield* AWS.Omics.StartReferenceImportJob(store);
// runtime
const result = yield* startReferenceImportJob({});

Source: src/AWS/Omics/StartRun.ts

Runtime binding for omics:StartRun.

Bind this operation to a Workflow to get a callable that starts a run of the bound workflow — the store/workflow id is injected automatically and the action is granted on the bound resource. Provide the implementation with Effect.provide(AWS.Omics.StartRunHttp).

// init
const startRun = yield* AWS.Omics.StartRun(workflow);
// runtime
const result = yield* startRun({});

Source: src/AWS/Omics/StartVariantImportJob.ts

Runtime binding for omics:StartVariantImportJob.

Bind this operation to a VariantStore to get a callable that starts a job importing VCF variant files into the store — the store name is injected automatically as destinationName and the action is granted on the bound resource (with iam:PassRole for the HealthOmics service role). Provide the implementation with Effect.provide(AWS.Omics.StartVariantImportJobHttp).

// init
const startImport = yield* AWS.Omics.StartVariantImportJob(store);
// runtime
const result = yield* startImport({
roleArn,
items: [{ source: "s3://my-bucket/variants.vcf" }],
});

Source: src/AWS/Omics/VariantStore.ts

An Amazon HealthOmics variant store — a container for genomic variant data (VCF) aligned to a reference genome.

A variant store name is auto-generated from the app, stage, and logical ID unless you provide one. The reference and sseConfig are immutable — changing either replaces the store. description is updated in place.

import * as Omics from "alchemy/AWS/Omics";
const store = yield* Omics.VariantStore("Variants", {
reference: {
referenceArn: "arn:aws:omics:us-east-1:123456789012:referenceStore/1234567890/reference/0987654321",
},
});

Source: src/AWS/Omics/Workflow.ts

An Amazon HealthOmics private workflow — a bioinformatics workflow (WDL, Nextflow, or CWL) that is executed as one or more runs.

A workflow name is auto-generated from the app, stage, and logical ID unless you provide one. The workflow definition (engine, definitionZip, definitionUri, main, parameterTemplate, accelerators) is immutable — changing any of it replaces the workflow. name, description, storageCapacity, and storageType are updated in place.

Workflow from an inline definition zip

import * as Omics from "alchemy/AWS/Omics";
const workflow = yield* Omics.Workflow("Hello", {
engine: "WDL",
main: "main.wdl",
definitionZip: myZipBytes,
});

Workflow from an S3-hosted definition

const workflow = yield* Omics.Workflow("Hello", {
engine: "NEXTFLOW",
definitionUri: "s3://my-bucket/workflows/hello.zip",
});