> For the complete documentation index, see [llms.txt](https://docs.omics.ai/products/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.omics.ai/products/workbench/engines/adding-and-updating-an-engine.md).

# Adding and Updating an Engine

[Workbench](https://github.com/DNAstack/dnastack-product-docs/blob/main/docs/workbench/engines/adding-and-updating-an-engine/broken-reference/README.md) requires at least one configured engine before you can submit workflow runs. This guide explains how to add and manage your engines.

## Adding a New Engine

1. Navigate to the [Engines page](https://workbench.omics.ai/settings) in Workbench
2. Click "Add Engine" in the top right corner
3. Select your engine type:
   * [Google Cloud Platform](/products/workbench/engines/adding-and-updating-an-engine/google-cloud-platform.md)
   * [AWS HealthOmics](/products/workbench/engines/adding-and-updating-an-engine/aws-healthomics.md)
   * [Microsoft Azure](/products/workbench/engines/adding-and-updating-an-engine/microsoft-azure.md)
   * [On-Premises](/products/workbench/engines/parameters/on-premises.md)

## Choosing the Right Engine

There is no single "right" engine choice - your selection should align with your project needs and available resources. When selecting an engine, consider:

### **Supported Regions**

Different engines have different regional availability. Ensure your chosen engine is available in regions that meet both your compliance and data locality requirements.

### **Data Movement and Costs**

Since data can exist in different regions and cloud environments, consider potential costs of data movement. Choose an engine that can access your data without incurring unnecessary egress costs.

### **WDL Support**

Engines vary in their WDL version support:

* Cromwell supports WDL 1.0
* miniWDL and HealthOmics support up to WDL 1.2

## Required Configuration

Each engine needs the following metadata:

### **Name and ID**

* Choose a meaningful name for easy identification
* Engine IDs must contain only letters, numbers, underscores, and dashes
* IDs are auto-generated from names but can be customized
* You'll use the ID for CLI and API references

### **Provider and Configuration**

The specific configuration options depend on your engine type. For example:

* AWS engines need access and secret keys
* GCP engines require a service account key

After completing configuration, click "Save." Workbench will validate your settings and perform connectivity checks.

## Updating an Engine

Navigate to the Engines page and select the engine you want to modify. You can update the name and configuration, but engine type and ID cannot be changed after creation.

## Engine State

Workbench displays engine status on the state card, showing:

* Overall state (`ONLINE` or `OFFLINE`)
* Last check timestamp
* Individual check results
* Detailed error messages for troubleshooting

{% hint style="info" %}
For help resolving issues, consult your engine's configuration guide.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.omics.ai/products/workbench/engines/adding-and-updating-an-engine.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
