[Yandex Cloud documentation](../../index.md) > [Yandex Virtual Private Cloud](../index.md) > [Step-by-step guides](index.md) > Subnet > Moving a subnet between folders

# Moving a subnet to a different folder

You can move [subnets](../concepts/network.md) between folders within a single [cloud](../../resource-manager/concepts/resources-hierarchy.md).

{% list tabs group=instructions %}

- Management console {#console}

  1. In the [management console](https://console.yandex.cloud), select the folder containing the subnet.
  1. Navigate to **Virtual Private Cloud**.
  1. In the left-hand panel, select ![subnets](../../_assets/console-icons/nodes-right.svg) **Subnets**.
  1. Click ![image](../../_assets/console-icons/ellipsis.svg) in the row of the subnet you need and select **Move**.
  1. In the window that opens, select the destination folder.
  1. Click **Move**.

  {% note info %}

  You can also [move](network-move.md) subnets as part of a cloud network.

  {% endnote %}

- 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.

  To move a [subnet](../concepts/network.md) to another folder:

  1. View the description of the CLI command to move subnets:

      ```bash
      yc vpc subnet move --help
      ```

  1. Get the name or ID of the subnet to move:

      ```bash
      yc vpc subnet list
      ```
      Result:
      ```text
      +----------------------+----------+----------------------+----------------+---------------+------------------+
      |          ID          |   NAME   |      NETWORK ID      | ROUTE TABLE ID |     ZONE      |      RANGE       |
      +----------------------+----------+----------------------+----------------+---------------+------------------+
      | e9bcd5mq43cn******** | subnet-a | encb4ubvmief******** |                | ru-central1-a | [10.1.0.0/16]    |
      +----------------------+----------+----------------------+----------------+---------------+------------------+
      ```

  1. Get a list of available folders:

      ```bash
      yc resource-manager folder list
      ```

      Result:
      ```text
      +----------------------+------------------------+--------+--------+
      |          ID          |          NAME          | LABELS | STATUS |
      +----------------------+------------------------+--------+--------+
      | b1cs8ie21pk1******** | default                |        | ACTIVE |
      | b1chgf288nvg******** | my-folder-1            |        | ACTIVE |
      | b1cu6g9ielh6******** | my-folder-2            |        | ACTIVE |
      +----------------------+------------------------+--------+--------+
      ```

  1. Move the subnet by specifying the name or ID of the subnet and destination folder:

     ```bash
     yc vpc subnet move <subnet_name_or_ID> \
       --destination-folder-name <destination_folder_name> \
       --destination-folder-id <destination_folder_ID>
     ```
     Use either `--destination-folder-name` or `--destination-folder-id`.

     If the subnet is not in the current folder (default folder), specify the source folder using `--folder-name` or `--folder-id`.

     Result:
     ```text
      id: e9bcd5mq43cn********
      folder_id: b1chgf288nvg********
      created_at: "2022-10-08T15:03:39Z"
      name: subnet-a
      network_id: encb4ubvmief********
      zone_id: ru-central1-a
      v4_cidr_blocks:
        - 10.1.0.0/16
      dhcp_options: {}
     ```
     For more information about the `yc vpc subnet move` command, see the [CLI reference](../../cli/cli-ref/vpc/cli-ref/subnet/move.md).

- API {#api}

  To move a [subnet](../concepts/network.md#subnet) to a different folder, use the [move](../api-ref/Subnet/move.md) REST API method for the [Subnet](../api-ref/Subnet/index.md) resource or the [SubnetService/Move](../api-ref/grpc/Subnet/move.md) gRPC API call, and provide the following in the request:

  * ID of the subnet you need to move in the `subnetId` parameter.

    To get the subnet ID, use the [list](../api-ref/Subnet/list.md) REST API method for the [Subnet](../api-ref/Subnet/index.md) resource or the [SubnetService/List](../api-ref/grpc/Subnet/list.md) gRPC API call and provide the folder ID in the `folderId` request parameter.

  * ID of the folder you want to move the subnet to in the `destinationFolderId` parameter.

    To learn how to find out the folder ID, see [Getting the folder ID](../../resource-manager/operations/folder/get-id.md).

{% endlist %}

## Examples {#examples}

### Subnet in the current folder {#from-default-folder}

Move a subnet from the current folder by specifying the subnet name and destination folder name:

{% list tabs group=instructions %}

- CLI {#cli}

  ```bash
  yc vpc subnet move subnet-a \
    --destination-folder-name my-folder-1
  ```

{% endlist %}

### Subnet in a different folder {#from-another-folder}

Move a subnet from a different folder. Specify the subnet ID and the source and destination folder IDs:

{% list tabs group=instructions %}

- CLI {#cli}

  ```bash
  yc vpc subnet move enc39op1vq9m******** \
    --folder-id b1chgf288nvg******** \
    --destination-folder-id b1cs8ie21pk1********
  ```

{% endlist %}

#### Useful links {#see-also}

* [Moving a cloud network to a different folder](network-move.md)