---
title: "Update a plan."
method: PUT
path: "/v1/{tenantId}/plans/{planId}"
tags: ["Plan"]
---

# Update a plan.

`PUT /v1/{tenantId}/plans/{planId}`

## Request body

- Plan
  - `Id` string — The plan ID, generated by server
  - `TenantId` string — The tenant UUID in a multi-tenancy environment.
  - `UserId` string — The user UUID in a multi-tenancy environment.
  - `Description` string — Plan description.
  - `Name` string — The plan name specified by user.
  - `Type` 'migration' — The plan type. Till now only migration support. New types will be added in the future.
  - `PolicyEnabled` boolean — Enable policy or not.
  - `PolicyId` string — Related policy id, plan will be scheduled automatically according this policy if PolicyEnabled is true.
  - `RemainSource` boolean — Remain the source objects or not.
  - `SourceConn` Connector
    - `StorType` 'hw-obs' | 'aws-s3' | 'azure-blob' | 'ceph-s3' | 'gcp-s3' | 'fusionstorage-object' | 'ibm-cos' | 'yig' | 'aws-file' | 'azure-file' — Connector type.
    - `BucketName` string — The name of bucket which is created in SODA Multi-Cloud. When the type of connector is opensds-obj, this parameter should be provided.
  - `DestConn` Connector
    - `StorType` 'hw-obs' | 'aws-s3' | 'azure-blob' | 'ceph-s3' | 'gcp-s3' | 'fusionstorage-object' | 'ibm-cos' | 'yig' | 'aws-file' | 'azure-file' — Connector type.
    - `BucketName` string — The name of bucket which is created in SODA Multi-Cloud. When the type of connector is opensds-obj, this parameter should be provided.
  - `Filter` object
    - `Prefix` string — Prefix of object name, only those objects which name have this prefix will be choosed.
    - `Tag` KV[] — Tag of object name.
      - `key` string — Key of the Key-Value object.
      - `Value` string — Value of the Key-Value object.

## Response `200`

successful operation

- object
  - `plan` Plan
    - `Id` string — The plan ID, generated by server
    - `TenantId` string — The tenant UUID in a multi-tenancy environment.
    - `UserId` string — The user UUID in a multi-tenancy environment.
    - `Description` string — Plan description.
    - `Name` string — The plan name specified by user.
    - `Type` 'migration' — The plan type. Till now only migration support. New types will be added in the future.
    - `PolicyEnabled` boolean — Enable policy or not.
    - `PolicyId` string — Related policy id, plan will be scheduled automatically according this policy if PolicyEnabled is true.
    - `RemainSource` boolean — Remain the source objects or not.
    - `SourceConn` Connector
      - `StorType` 'hw-obs' | 'aws-s3' | 'azure-blob' | 'ceph-s3' | 'gcp-s3' | 'fusionstorage-object' | 'ibm-cos' | 'yig' | 'aws-file' | 'azure-file' — Connector type.
      - `BucketName` string — The name of bucket which is created in SODA Multi-Cloud. When the type of connector is opensds-obj, this parameter should be provided.
    - `DestConn` Connector
      - `StorType` 'hw-obs' | 'aws-s3' | 'azure-blob' | 'ceph-s3' | 'gcp-s3' | 'fusionstorage-object' | 'ibm-cos' | 'yig' | 'aws-file' | 'azure-file' — Connector type.
      - `BucketName` string — The name of bucket which is created in SODA Multi-Cloud. When the type of connector is opensds-obj, this parameter should be provided.
    - `Filter` object
      - `Prefix` string — Prefix of object name, only those objects which name have this prefix will be choosed.
      - `Tag` KV[] — Tag of object name.
        - `key` string — Key of the Key-Value object.
        - `Value` string — Value of the Key-Value object.

## Other responses

- `401` — Unauthorized. Token not found in header
- `404` — The resource does not exist i.e. Plan does not exist.

---

[API](https://skmtc.net/sodafoundation/apis/soda-multi-cloud-api.md) · [All operations](https://skmtc.net/sodafoundation/apis/soda-multi-cloud-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sodafoundation/soda-multi-cloud-api/revisions/df048c8349b6/schema)
