[Yandex Cloud documentation](../../../../index.md) > [Yandex Serverless Integrations](../../../index.md) > [Step-by-step guides](../../index.md) > Workflows > Managing a workflow > Updating a workflow

# Updating a workflow

{% list tabs group=instructions %}

- Management console {#console}

  1. In the [management console](https://console.yandex.cloud), navigate to the folder where you want to update a [workflow](../../../concepts/workflows/workflow.md).
  1. Navigate to **Serverless Integrations**.
  1. In the left-hand panel, click ![image](../../../../_assets/console-icons/graph-node.svg) **Workflows**.
  1. Click ![image](../../../../_assets/console-icons/ellipsis.svg) in the workflow row and select ![image](../../../../_assets/console-icons/pencil.svg) **Edit**.
  1. Update workflow parameters in the YaML specification or using the constructor. For more information about configuring workflow steps using the constructor, see [Workflows workflow step constructor overview](../constructor/index.md).
  1. Click **Save**.

- CLI {#cli}

  If you do not have the Yandex Cloud CLI yet, [install and initialize it](../../../../cli/quickstart.md#install).

  The folder used by default is the one specified when [creating](../../../../cli/operations/profile/profile-create.md) the CLI profile. To change the default folder, use the `yc config set folder-id <folder_ID>` command. You can also specify a different folder for any command using `--folder-name` or `--folder-id`. If you access a resource by its name, the search will be limited to the default folder. If you access a resource by its ID, the search will be global, i.e., through all folders based on access permissions.

  1. View the description of the CLI command for updating a [workflow](../../../concepts/workflows/workflow.md):

      ```bash
      yc serverless workflow update --help
      ```

  1. Get a list of workflows:
     
     ```bash
     yc serverless workflow list
     ```
     
     Result:
     
     ```text
     workflows:
       - id: dfqdi6ic7c5j********
         folder_id: b1g681qpemb4********
         created_at: "2025-03-10T13:31:55.387059Z"
         name: workflow895
         status: ACTIVE
         log_options:
           folder_id: b1g681qpemb4********
       ...
       - id: dfqud9cbc4k5********
         folder_id: b1g681qpemb4********
         created_at: "2025-03-10T12:57:48.679682Z"
         name: workflow203
         status: ACTIVE
         log_options:
           folder_id: b1g681qpemb4********
     ```
  1. In the command, specify the parameters to update, such as the workflow name:

      ```bash
      yc serverless workflow update \
        --yaml-spec <specification_file> \
        --name <workflow_name> \
        --new-name <new_workflow_name>
      ```

      Where:

      * `--yaml-spec`: Path to the [YaWL specification](../../../concepts/workflows/yawl/index.md) file for the workflow, e.g., `./yawl-spec.json`.
      * `--name`: Old workflow name.
      * `--new-name`: New workflow name.

      Result:

      ```text
      id: dfqjl5hh5p90********
      folder_id: b1g681qpemb4********
      specification:
        spec_yaml: "yawl: ..."
      created_at: "2025-03-11T09:27:51.691990Z"
      name: renamed-workflow
      description: created via cli
      labels:
        owner: "admin"
        version: "alpha"
      status: ACTIVE
      log_options: {}
      service_account_id: aje4tpd9coa********
      network_id: enpm8v48ehcl********
      ```

- API {#api}

  To update a [workflow](../../../concepts/workflows/workflow.md), use the [Update](../../../workflows/api-ref/Workflow/update.md) REST API method for the [Workflows](../../../workflows/api-ref/Workflow/index.md) resource or the [workflow/Update](../../../workflows/api-ref/grpc/Workflow/update.md) gRPC API call.

{% endlist %}