workflows

API endpoint base: https://pirca.arvadosapi.com/arvados/v1/workflows

Object type: 7fd4e

Example UUID: zzzzz-7fd4e-0123456789abcde

Resource

Stores a Common Workflow Language (CWL) computational workflow that can be searched for, browsed and executed (submitted to Crunch) from the workbench.

Each Workflow offers the following optional attributes, in addition to the Common resource fields:

Attribute Type Description Example
name string If not specified, will be set to any “name” from the “definition” attribute.
description string If not specified, will be set to any “description” from the “definition” attribute.
definition string A “Common Workflow Language” document. Visit Common Workflow Language for details.
collection_uuid string If non-null, a linked workflow definition stored in a Collection. See below.

Workflows linked to Collections

If collection_uuid is set, this significantly changes the behavior of the workflow record.

The linked Collection must have the following properties. These are extracted from and must be synchronized with the workflow in arv:workflowMain. They are copied into the workflow collection’s properties for ease of processing by client tools such as Workbench.

Attribute Type Description
type string Value must be ‘workflow’
arv:workflowMain string The file path within the collection that is the top-level workflow that will be launched.
arv:cwl_inputs array of object Array of workflow input parameters in fully expanded form
arv:cwl_outputs array of object Array of workflow output parameters in fully expanded form
arv:cwl_requirements array of object Array of workflow process requirements in fully expanded form (in particular, this must list requirements that affect initial launching of the workflow such as WorkflowRunnerResources ).
arv:cwl_hints array of object Array of workflow process hints in fully expanded form (in particular, this must list hints that affect initial launching of the workflow such as WorkflowRunnerResources ).

When collection_uuid is set, the workflow record name, description, definition and owner_uuid are all set from the linked collection. The workflow record can no longer be updated directly, but changes to the linked collection will be reflected in the workflow record. Trashing the linked collection will cause the workflow record to become trashed and eventually deleted as well. The workflow record cannot be un-linked from a collection, only deleted and re-created.

When a workflow is linked to a collection, the collection can be queried and fetched together with the workflow. The filters argument can filter on attributes of the collection referenced by collection_uuid. For example, [["collection.properties.category", "=", "WGS"]] will match workflow definitions linked to collections that have a “category” property with the value “WGS”. When using the group contents API to fetch workflow records, in addition the previously-described filters, you can use include=["collection_uuid"] to include the collection records corresponding to the collection_uuid of the workflow records in the response.

Methods

See Common resource methods for more information about create, delete, get, list, and update.

Required arguments are displayed in green.

Supports federated create, delete, get, list, and update.

create

Create a new Workflow.

Arguments:

Argument Type Description Location Example
workflow object Workflow resource request body

delete

Delete an existing Workflow.

Arguments:

Argument Type Description Location Example
uuid string The UUID of the Workflow in question. path

get

Get a Workflow’s metadata by UUID.

Arguments:

Argument Type Description Location Example
uuid string The UUID of the Workflow in question. path

list

List workflows.

See common resource list method.

The filters argument can filter on attributes of the collection referenced by collection_uuid. For example, [["collection.properties.category", "=", "WGS"]] will match workflow definitions linked to collections that have a “category” property with the value “WGS”.

update

Update attributes of an existing Workflow.

Arguments:

Argument Type Description Location Example
uuid string The UUID of the Workflow in question. path
workflow object query

Previous: containers Next: cloud dispatcher

The content of this documentation is licensed under the Creative Commons Attribution-Share Alike 3.0 United States licence.
Code samples in this documentation are licensed under the Apache License, Version 2.0.