# workflows versions dependencies update

## Synopsis

```shell
omics workbench workflows versions dependencies update
  --workflow=WORKFLOW_ID
  --version=VERSION_ID
  --name=DEPENDENCY_NAME
  --dependency=DEPENDENCY_SPEC [--dependency=DEPENDENCY_SPEC ...]
  DEPENDENCY_ID
  [--global]
  [--namespace=NAMESPACE]
```

## Description

Update an existing workflow dependency by modifying its name and prerequisite workflows. This command allows you to change the dependencies and metadata of an existing workflow dependency while preserving its ID and creation timestamp.

Dependency specifications follow the same format as the create command:

* `workflow-id/version-id` - Specifies an explicit version
* `workflow-id` - Automatically resolves to the latest version

## Examples

Update a dependency's name and prerequisites:

```shell
omics workbench workflows versions dependencies update \
  --workflow 40c67272-3553-4bb1-8662-81c81acff347 \
  --version latest \
  --name "Updated preprocessing pipeline" \
  --dependency "5633fe10-b66a-4a20-8258-9963e4cac6fa/v2.0" \
  5a0082d1-84d8-409a-8cea-5fbde03a0c68
```

Update a dependency with multiple new prerequisites:

```shell
omics workbench workflows versions dependencies update \
  --workflow 40c67272-3553-4bb1-8662-81c81acff347 \
  --version v2.0 \
  --name "Enhanced analysis pipeline" \
  --dependency "data-validation/v1.3" \
  --dependency "quality-metrics" \
  --dependency "normalization/v2.1" \
  5a0082d1-84d8-409a-8cea-5fbde03a0c68
```

Update a dependency with global administrative privileges:

```shell
omics workbench workflows versions dependencies update \
  --workflow 40c67272-3553-4bb1-8662-81c81acff347 \
  --version latest \
  --name "System-wide dependency" \
  --dependency "global-init/v1.0" \
  --global \
  5a0082d1-84d8-409a-8cea-5fbde03a0c68
```

## Flags

### `--workflow`=`WORKFLOW_ID`

**Required**. Specify the UUID of the workflow containing the dependency you want to update.

### `--version`=`VERSION_ID`

**Required**. Specify the version ID of the workflow containing the dependency you want to update.

### `--name`=`DEPENDENCY_NAME`

**Required**. The new human-readable name for the dependency.

### `--dependency`=`DEPENDENCY_SPEC`

**Required**. Specify updated dependencies in the format `workflow-id/version-id` or `workflow-id`. When only the workflow ID is provided, the system automatically resolves to the latest available version. This flag can be specified multiple times to define multiple prerequisites.

### `DEPENDENCY_ID`

**Required**. The ID of the dependency to update.

### `--global`

Update a global dependency that applies across all namespaces. This flag requires administrator privileges and adds the `X-Admin-Only-Action` header to the request.

### `--namespace`=`NAMESPACE`

An optional flag to define the namespace to connect to. By default, the namespace is extracted from the user's credentials.
