Amazon Omics

2024/04/30 - Amazon Omics - 6 updated api methods

Changes  Add support for workflow sharing and dynamic run storage

GetRun (updated) Link ¶
Changes (response)
{'storageType': 'STATIC | DYNAMIC', 'workflowOwnerId': 'string'}

Gets information about a workflow run.

If a workflow is shared with you, you cannot export information about the run.

See also: AWS API Documentation

Request Syntax

client.get_run(
    id='string',
    export=[
        'DEFINITION',
    ]
)
type id:

string

param id:

[REQUIRED]

The run's ID.

type export:

list

param export:

The run's export format.

  • (string) --

rtype:

dict

returns:

Response Syntax

{
    'arn': 'string',
    'id': 'string',
    'status': 'PENDING'|'STARTING'|'RUNNING'|'STOPPING'|'COMPLETED'|'DELETED'|'CANCELLED'|'FAILED',
    'workflowId': 'string',
    'workflowType': 'PRIVATE'|'READY2RUN',
    'runId': 'string',
    'roleArn': 'string',
    'name': 'string',
    'runGroupId': 'string',
    'priority': 123,
    'definition': 'string',
    'digest': 'string',
    'parameters': {...}|[...]|123|123.4|'string'|True|None,
    'storageCapacity': 123,
    'outputUri': 'string',
    'logLevel': 'OFF'|'FATAL'|'ERROR'|'ALL',
    'resourceDigests': {
        'string': 'string'
    },
    'startedBy': 'string',
    'creationTime': datetime(2015, 1, 1),
    'startTime': datetime(2015, 1, 1),
    'stopTime': datetime(2015, 1, 1),
    'statusMessage': 'string',
    'tags': {
        'string': 'string'
    },
    'accelerators': 'GPU',
    'retentionMode': 'RETAIN'|'REMOVE',
    'failureReason': 'string',
    'logLocation': {
        'engineLogStream': 'string',
        'runLogStream': 'string'
    },
    'uuid': 'string',
    'runOutputUri': 'string',
    'storageType': 'STATIC'|'DYNAMIC',
    'workflowOwnerId': 'string'
}

Response Structure

  • (dict) --

    • arn (string) --

      The run's ARN.

    • id (string) --

      The run's ID.

    • status (string) --

      The run's status.

    • workflowId (string) --

      The run's workflow ID.

    • workflowType (string) --

      The run's workflow type.

    • runId (string) --

      The run's ID.

    • roleArn (string) --

      The run's service role ARN.

    • name (string) --

      The run's name.

    • runGroupId (string) --

      The run's group ID.

    • priority (integer) --

      The run's priority.

    • definition (string) --

      The run's definition.

    • digest (string) --

      The run's digest.

    • parameters (:ref:`document<document>`) --

      The run's parameters.

    • storageCapacity (integer) --

      The run's storage capacity in gibibytes. For dynamic storage, after the run has completed, this value is the maximum amount of storage used during the run.

    • outputUri (string) --

      The run's output URI.

    • logLevel (string) --

      The run's log level.

    • resourceDigests (dict) --

      The run's resource digests.

      • (string) --

        • (string) --

    • startedBy (string) --

      Who started the run.

    • creationTime (datetime) --

      When the run was created.

    • startTime (datetime) --

      When the run started.

    • stopTime (datetime) --

      The run's stop time.

    • statusMessage (string) --

      The run's status message.

    • tags (dict) --

      The run's tags.

      • (string) --

        • (string) --

    • accelerators (string) --

      The computational accelerator used to run the workflow.

    • retentionMode (string) --

      The run's retention mode.

    • failureReason (string) --

      The reason a run has failed.

    • logLocation (dict) --

      The location of the run log.

      • engineLogStream (string) --

        The log stream ARN for the engine log.

      • runLogStream (string) --

        The log stream ARN for the run log.

    • uuid (string) --

      The universally unique identifier for a run.

    • runOutputUri (string) --

      The destination for workflow outputs.

    • storageType (string) --

      The run's storage type.

    • workflowOwnerId (string) --

      The ID of the workflow owner.

GetShare (updated) Link ¶
Changes (response)
{'share': {'resourceId': 'string'}}

Retrieves the metadata for the specified resource share.

See also: AWS API Documentation

Request Syntax

client.get_share(
    shareId='string'
)
type shareId:

string

param shareId:

[REQUIRED]

The ID of the share.

rtype:

dict

returns:

Response Syntax

{
    'share': {
        'shareId': 'string',
        'resourceArn': 'string',
        'resourceId': 'string',
        'principalSubscriber': 'string',
        'ownerId': 'string',
        'status': 'PENDING'|'ACTIVATING'|'ACTIVE'|'DELETING'|'DELETED'|'FAILED',
        'statusMessage': 'string',
        'shareName': 'string',
        'creationTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • share (dict) --

      A resource share details object. The object includes the status, the resourceArn, and ownerId.

      • shareId (string) --

        The ID of the resource share.

      • resourceArn (string) --

        The Arn of the shared resource.

      • resourceId (string) --

        The ID of the shared resource.

      • principalSubscriber (string) --

        The principal subscriber is the account that is sharing the resource.

      • ownerId (string) --

        The account ID for the data owner. The owner creates the resource share.

      • status (string) --

        The status of the share.

      • statusMessage (string) --

        The status message for a resource share. It provides additional details about the share status.

      • shareName (string) --

        The name of the resource share.

      • creationTime (datetime) --

        The timestamp of when the resource share was created.

      • updateTime (datetime) --

        The timestamp of the resource share update.

GetWorkflow (updated) Link ¶
Changes (request)
{'workflowOwnerId': 'string'}

Gets information about a workflow.

If a workflow is shared with you, you cannot export the workflow.

See also: AWS API Documentation

Request Syntax

client.get_workflow(
    id='string',
    type='PRIVATE'|'READY2RUN',
    export=[
        'DEFINITION',
    ],
    workflowOwnerId='string'
)
type id:

string

param id:

[REQUIRED]

The workflow's ID.

type type:

string

param type:

The workflow's type.

type export:

list

param export:

The export format for the workflow.

  • (string) --

type workflowOwnerId:

string

param workflowOwnerId:

The ID of the workflow owner.

rtype:

dict

returns:

Response Syntax

{
    'arn': 'string',
    'id': 'string',
    'status': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETED'|'FAILED'|'INACTIVE',
    'type': 'PRIVATE'|'READY2RUN',
    'name': 'string',
    'description': 'string',
    'engine': 'WDL'|'NEXTFLOW'|'CWL',
    'definition': 'string',
    'main': 'string',
    'digest': 'string',
    'parameterTemplate': {
        'string': {
            'description': 'string',
            'optional': True|False
        }
    },
    'storageCapacity': 123,
    'creationTime': datetime(2015, 1, 1),
    'statusMessage': 'string',
    'tags': {
        'string': 'string'
    },
    'metadata': {
        'string': 'string'
    },
    'accelerators': 'GPU'
}

Response Structure

  • (dict) --

    • arn (string) --

      The workflow's ARN.

    • id (string) --

      The workflow's ID.

    • status (string) --

      The workflow's status.

    • type (string) --

      The workflow's type.

    • name (string) --

      The workflow's name.

    • description (string) --

      The workflow's description.

    • engine (string) --

      The workflow's engine.

    • definition (string) --

      The workflow's definition.

    • main (string) --

      The path of the main definition file for the workflow.

    • digest (string) --

      The workflow's digest.

    • parameterTemplate (dict) --

      The workflow's parameter template.

      • (string) --

        • (dict) --

          A workflow parameter.

          • description (string) --

            The parameter's description.

          • optional (boolean) --

            Whether the parameter is optional.

    • storageCapacity (integer) --

      The workflow's storage capacity in gibibytes.

    • creationTime (datetime) --

      When the workflow was created.

    • statusMessage (string) --

      The workflow's status message.

    • tags (dict) --

      The workflow's tags.

      • (string) --

        • (string) --

    • metadata (dict) --

      Gets metadata for workflow.

      • (string) --

        • (string) --

    • accelerators (string) --

      The computational accelerator specified to run the workflow.

ListRuns (updated) Link ¶
Changes (response)
{'items': {'storageType': 'STATIC | DYNAMIC'}}

Retrieves a list of runs.

See also: AWS API Documentation

Request Syntax

client.list_runs(
    name='string',
    runGroupId='string',
    startingToken='string',
    maxResults=123,
    status='PENDING'|'STARTING'|'RUNNING'|'STOPPING'|'COMPLETED'|'DELETED'|'CANCELLED'|'FAILED'
)
type name:

string

param name:

Filter the list by run name.

type runGroupId:

string

param runGroupId:

Filter the list by run group ID.

type startingToken:

string

param startingToken:

Specify the pagination token from a previous request to retrieve the next page of results.

type maxResults:

integer

param maxResults:

The maximum number of runs to return in one page of results.

type status:

string

param status:

The status of a run.

rtype:

dict

returns:

Response Syntax

{
    'items': [
        {
            'arn': 'string',
            'id': 'string',
            'status': 'PENDING'|'STARTING'|'RUNNING'|'STOPPING'|'COMPLETED'|'DELETED'|'CANCELLED'|'FAILED',
            'workflowId': 'string',
            'name': 'string',
            'priority': 123,
            'storageCapacity': 123,
            'creationTime': datetime(2015, 1, 1),
            'startTime': datetime(2015, 1, 1),
            'stopTime': datetime(2015, 1, 1),
            'storageType': 'STATIC'|'DYNAMIC'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      A list of runs.

      • (dict) --

        A workflow run.

        • arn (string) --

          The run's ARN.

        • id (string) --

          The run's ID.

        • status (string) --

          The run's status.

        • workflowId (string) --

          The run's workflow ID.

        • name (string) --

          The run's name.

        • priority (integer) --

          The run's priority.

        • storageCapacity (integer) --

          The run's storage capacity in gibibytes. For dynamic storage, after the run has completed, this value is the maximum amount of storage used during the run.

        • creationTime (datetime) --

          When the run was created.

        • startTime (datetime) --

          When the run started.

        • stopTime (datetime) --

          When the run stopped.

        • storageType (string) --

          The run's storage type.

    • nextToken (string) --

      A pagination token that's included if more results are available.

ListShares (updated) Link ¶
Changes (request, response)
Request
{'filter': {'type': ['VARIANT_STORE | ANNOTATION_STORE | WORKFLOW']}}
Response
{'shares': {'resourceId': 'string'}}

Retrieves the resource shares associated with an account. Use the filter parameter to retrieve a specific subset of the shares.

See also: AWS API Documentation

Request Syntax

client.list_shares(
    resourceOwner='SELF'|'OTHER',
    filter={
        'resourceArns': [
            'string',
        ],
        'status': [
            'PENDING'|'ACTIVATING'|'ACTIVE'|'DELETING'|'DELETED'|'FAILED',
        ],
        'type': [
            'VARIANT_STORE'|'ANNOTATION_STORE'|'WORKFLOW',
        ]
    },
    nextToken='string',
    maxResults=123
)
type resourceOwner:

string

param resourceOwner:

[REQUIRED]

The account that owns the resource shares.

type filter:

dict

param filter:

Attributes that you use to filter for a specific subset of resource shares.

  • resourceArns (list) --

    Filter based on the Amazon Resource Number (ARN) of the resource. You can specify up to 10 values.

    • (string) --

  • status (list) --

    Filter based on the resource status. You can specify up to 10 values.

    • (string) --

  • type (list) --

    The type of resources to be filtered. You can specify one or more of the resource types.

    • (string) --

type nextToken:

string

param nextToken:

Next token returned in the response of a previous ListReadSetUploadPartsRequest call. Used to get the next page of results.

type maxResults:

integer

param maxResults:

The maximum number of shares to return in one page of results.

rtype:

dict

returns:

Response Syntax

{
    'shares': [
        {
            'shareId': 'string',
            'resourceArn': 'string',
            'resourceId': 'string',
            'principalSubscriber': 'string',
            'ownerId': 'string',
            'status': 'PENDING'|'ACTIVATING'|'ACTIVE'|'DELETING'|'DELETED'|'FAILED',
            'statusMessage': 'string',
            'shareName': 'string',
            'creationTime': datetime(2015, 1, 1),
            'updateTime': datetime(2015, 1, 1)
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • shares (list) --

      The shares available and their metadata details.

      • (dict) --

        The details of a resource share.

        • shareId (string) --

          The ID of the resource share.

        • resourceArn (string) --

          The Arn of the shared resource.

        • resourceId (string) --

          The ID of the shared resource.

        • principalSubscriber (string) --

          The principal subscriber is the account that is sharing the resource.

        • ownerId (string) --

          The account ID for the data owner. The owner creates the resource share.

        • status (string) --

          The status of the share.

        • statusMessage (string) --

          The status message for a resource share. It provides additional details about the share status.

        • shareName (string) --

          The name of the resource share.

        • creationTime (datetime) --

          The timestamp of when the resource share was created.

        • updateTime (datetime) --

          The timestamp of the resource share update.

    • nextToken (string) --

      Next token returned in the response of a previous ListSharesResponse call. Used to get the next page of results.

StartRun (updated) Link ¶
Changes (request)
{'storageType': 'STATIC | DYNAMIC', 'workflowOwnerId': 'string'}

Starts a workflow run. To duplicate a run, specify the run's ID and a role ARN. The remaining parameters are copied from the previous run.

StartRun will not support re-run for a workflow that is shared with you.

The total number of runs in your account is subject to a quota per Region. To avoid needing to delete runs manually, you can set the retention mode to REMOVE. Runs with this setting are deleted automatically when the run quoata is exceeded.

By default, the run uses STATIC storage. For STATIC storage, set the storageCapacity field. You can set the storage type to DYNAMIC. You do not set storageCapacity, because HealthOmics dynamically scales the storage up or down as required. For more information about static and dynamic storage, see Running workflows in the AWS HealthOmics User Guide.

See also: AWS API Documentation

Request Syntax

client.start_run(
    workflowId='string',
    workflowType='PRIVATE'|'READY2RUN',
    runId='string',
    roleArn='string',
    name='string',
    runGroupId='string',
    priority=123,
    parameters={...}|[...]|123|123.4|'string'|True|None,
    storageCapacity=123,
    outputUri='string',
    logLevel='OFF'|'FATAL'|'ERROR'|'ALL',
    tags={
        'string': 'string'
    },
    requestId='string',
    retentionMode='RETAIN'|'REMOVE',
    storageType='STATIC'|'DYNAMIC',
    workflowOwnerId='string'
)
type workflowId:

string

param workflowId:

The run's workflow ID.

type workflowType:

string

param workflowType:

The run's workflow type.

type runId:

string

param runId:

The ID of a run to duplicate.

type roleArn:

string

param roleArn:

[REQUIRED]

A service role for the run.

type name:

string

param name:

A name for the run.

type runGroupId:

string

param runGroupId:

The run's group ID.

type priority:

integer

param priority:

A priority for the run.

type parameters:

:ref:`document<document>`

param parameters:

Parameters for the run.

type storageCapacity:

integer

param storageCapacity:

A storage capacity for the run in gibibytes. This field is not required if the storage type is dynamic (the system ignores any value that you enter).

type outputUri:

string

param outputUri:

An output URI for the run.

type logLevel:

string

param logLevel:

A log level for the run.

type tags:

dict

param tags:

Tags for the run.

  • (string) --

    • (string) --

type requestId:

string

param requestId:

[REQUIRED]

To ensure that requests don't run multiple times, specify a unique ID for each request.

This field is autopopulated if not provided.

type retentionMode:

string

param retentionMode:

The retention mode for the run.

type storageType:

string

param storageType:

The run's storage type. By default, the run uses STATIC storage type, which allocates a fixed amount of storage. If you set the storage type to DYNAMIC, HealthOmics dynamically scales the storage up or down, based on file system utilization.

type workflowOwnerId:

string

param workflowOwnerId:

The ID of the workflow owner.

rtype:

dict

returns:

Response Syntax

{
    'arn': 'string',
    'id': 'string',
    'status': 'PENDING'|'STARTING'|'RUNNING'|'STOPPING'|'COMPLETED'|'DELETED'|'CANCELLED'|'FAILED',
    'tags': {
        'string': 'string'
    },
    'uuid': 'string',
    'runOutputUri': 'string'
}

Response Structure

  • (dict) --

    • arn (string) --

      The run's ARN.

    • id (string) --

      The run's ID.

    • status (string) --

      The run's status.

    • tags (dict) --

      The run's tags.

      • (string) --

        • (string) --

    • uuid (string) --

      The universally unique identifier for a run.

    • runOutputUri (string) --

      The destination for workflow outputs.