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.