---
title: "Create a volume."
method: POST
path: "/v1/{tenantId}/volumes"
tags: ["Volume"]
---

# Create a volume.

`POST /v1/{tenantId}/volumes`

## Request

- Base URL: `https://virtserver.swaggerhub.com/open83/crystal/1.0.0`
- URL: `https://virtserver.swaggerhub.com/open83/crystal/1.0.0/v1/{tenantId}/volumes`
- Auth: none declared

## Request body

- Volume
  - `Id` string: The volume ID, - Optional
  - `UserId` string: The user UUID in a multi-tenancy environment, - Optional
  - `BackendId` string, required: The backend ID, - Required
  - `Backend` string: The backend Name, - Optional
  - `Name` string, required: The volume name specified by user, - Required
  - `Description` string: The volume name specified by user, - Optional
  - `Type` string, required: The volume type, - Optional
  - `iops` integer: The IOPS the required for the volume as per the cloud provider
  - `Size` integer: The volume size, - Optional
  - `Region` string: The region for the volume, - Optional
  - `AvailabilityZone` string: The availability zone for the volume, - Optional
  - `Tags` Tag[]: The volume tags, - Optional
    - `key` string: Key of the Tag object.
    - `Value` string: Value of the Tag object.
  - `SnapshotId` string: The volume snapshot id, - Optional
  - `Encrypted` boolean: Flag for encrypted volume, - Optional
  - `EncryptedSettings` object: Encrypted volume Keys, - Optional
  - `Metadata` object: Metadata for cloud backend specific data, - Optional

## Response `200`

successful operation

- VolumeResult: Volume Response
  - `Id` string: The volume ID, generated by server
  - `CreatedAt` string: The time of creation of the volume.
  - `UpdatedAt` string: The time at which the volume was updated.
  - `TenantId` string: The tenant UUID in a multi-tenancy environment.
  - `UserId` string: The user UUID in a multi-tenancy environment.
  - `BackendId` string: The backend ID
  - `Backend` string: The backend Name.
  - `Name` string: The volume name specified by user.
  - `Description` string: The volume description specified by user.
  - `Type` string: The volume type.
  - `Size` integer: The volume size.
  - `Region` string: The region for the volume.
  - `AvailabilityZone` string: The availability zone for the volume.
  - `Status` 'available' | 'creating' | 'inUse' | 'error' | 'updating' | 'deleting' | 'errorDeleting' | 'deleted': The volume status.
  - `Tags` Tag[]
    - `key` string: Key of the Tag object.
    - `Value` string: Value of the Tag object.
  - `SnapshotId` string: The volume snapshot id.
  - `Encrypted` boolean: Flag for encryted volume.
  - `EncryptedSettings` object: Encryted volume Keys.
  - `Metadata` object
    - `fields` VolumeFields
      - `CreationTimeAtBackend` object
        - `kind` object
          - `StringValue` string
      - `StartTimeAtBackend` object
        - `kind` object
          - `StringValue` string
      - `VolumeId` object
        - `kind` object
          - `StringValue` string
      - `Progress` object
        - `kind` object
          - `NumberValue` integer

## Other responses

- `400`: Bad Request
- `401`: Unauthorized. Token not found in header
- `415`: Unsupported Media Type

---

[API](https://skmtc.dev/sodafoundation/apis/soda-crystal-api.md) - [All operations](https://skmtc.dev/sodafoundation/apis/soda-crystal-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sodafoundation/apis/soda-crystal-api/revisions/c02dd33a522b?raw)
