---
title: "List of available configurations for volumes"
method: GET
path: "/v1/volume-configs"
tags: ["Volumes configurations"]
---

# List of available configurations for volumes

`GET /v1/volume-configs`

## Request

- Base URL: `https://api.emma.ms/external`
- URL: `https://api.emma.ms/external/v1/volume-configs`
- Auth: HTTP bearer

When creating data volume or upsizing a volume you need to provide the desired volume size. Different cloud providers offer various configurations in different data centers. Therefore, before creating or editing a volume, you need to verify the available configurations.

Use this endpoint as a reference for available volume configurations. 

To search configurations for data volumes specify `isBootable: false` and needed filters in parameters: provider, location, data center, volume size, volume type.

To search configurations for system volume resize specify `isBootable: true` and vmId. You can also set the volumeGbMin to filter configurations that have not enough size.

When you find an appropriate configuration, provide its parameters in the endpoint for creating or resizing a volume.

## Query parameters

- `isBootable` boolean, required
- `vmId` integer
- `providerId` integer
- `locationId` integer
- `dataCenterId` string
- `volumeGbMin` integer
- `volumeType` 'hdd' | 'ssd' | 'ssd-plus'
- `page` integer
- `size` integer
- `projectId` integer

## Response `200`

Successful operation

- object
  - `totalPages` integer: Total number of pages available
  - `totalElements` integer: Total number of elements across all pages
  - `size` integer: Number of elements per page
  - `content` VolumeConfiguration[]: List of elements on the current page
    - `providerId` integer: ID of the cloud provider
    - `providerName` string: Name of the cloud provider
    - `locationId` integer: Location ID
    - `locationName` string: Location name (city or state)
    - `dataCenterId` string: ID of the data center
    - `dataCenterName` string: Name of the data center
    - `volumeGb` integer: Capacity of the volume in gigabytes
    - `volumeType` 'hdd' | 'ssd' | 'ssd-plus': Volume type
    - `cost` object: Cost of the configuration
      - `unit` string: Cost period
      - `currency` string: Currency of the cost
      - `pricePerUnit` number: Cost for the period
  - `number` integer: Current page number (0-based index)
  - `sort` SortObject: Sorting criteria for the elements
    - `empty` boolean: Indicates if the sorting criteria is empty
    - `unsorted` boolean: Indicates if the elements are unsorted
    - `sorted` boolean: Indicates if the elements are sorted
  - `last` boolean: Indicates if this is the last page
  - `first` boolean: Indicates if this is the first page
  - `numberOfElements` integer: Number of elements on the current page
  - `pageable` PageableObject: Pageable object containing pagination information
    - `offset` integer: Offset of the first element on the page
    - `sort` SortObject: Sorting criteria for the elements
      - `empty` boolean: Indicates if the sorting criteria is empty
      - `unsorted` boolean: Indicates if the elements are unsorted
      - `sorted` boolean: Indicates if the elements are sorted
    - `pageSize` integer: Number of elements per page
    - `pageNumber` integer: Current page number (0-based index)
    - `paged` boolean: Indicates if pagination is applied
    - `unpaged` boolean: Indicates if pagination is not applied
  - `empty` boolean: Indicates if the page is empty

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden - Access is denied
- `500`: Internal server error

---

[API](https://skmtc.dev/emma/apis/public-emma-api.md) - [All operations](https://skmtc.dev/emma/apis/public-emma-api/llms.txt) - [OpenAPI document](https://skmtc.dev/emma/apis/public-emma-api/revisions/9e55f0920078?raw)
