---
title: "List of available configurations for Kubernetes cluster node"
method: GET
path: "/v1/kubernetes-configs"
tags: ["Compute instances configurations"]
---

# List of available configurations for Kubernetes cluster node

`GET /v1/kubernetes-configs`

## Request

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

Returns the list of available hardware configurations that can be used for Kubernetes cluster worker nodes.

Each configuration defines the compute resources available for a node, including:
- CPU count
- CPU type
- RAM size
- system disk size
- system disk type
- optional GPU configuration

Available configurations depend on the cloud provider and data center. Therefore, they must be retrieved before creating or updating a Kubernetes cluster.

This endpoint allows searching and filtering configurations using parameters listed in the **Parameters** section.

The selected configuration should be used when calling the **Kubernetes cluster creation** or **cluster update** endpoints, where these parameters define the specification of worker nodes.

## Query parameters

- `providerId` integer
- `locationId` integer
- `acceleratorTypeId` string
- `acceleratorsMin` number
- `acceleratorsMax` number
- `k8sConnectionType` 'direct_connect' | 'internet_connect', required
- `dataCenterId` string
- `vCpuType` 'shared' | 'standard' | 'hpc'
- `vCpu` integer
- `vCpuMin` integer
- `vCpuMax` integer
- `ramGb` integer
- `ramGbMin` integer
- `ramGbMax` integer
- `volumeGb` integer
- `volumeGbMin` integer
- `volumeGbMax` integer
- `volumeType` 'ssd' | 'ssd-plus'
- `priceMin` number
- `priceMax` number
- `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` K8sNodeConfiguration[]: List of elements on the current page
    - `id` string: Configuration ID
    - `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
    - `osId` integer: ID of the operating system
    - `osType` string: Type of the operating system
    - `osVersion` string: Version of the operating system
    - `cloudNetworkTypes` string[]: List of the cloud network types
    - `vCpuType` string: Type of virtual Central Processing Units (vCPUs)
    - `vCpu` integer: Number of virtual Central Processing Units (vCPUs)
    - `ramGb` integer: Capacity of the RAM in gigabytes
    - `volumeGb` integer: Capacity of the volume in gigabytes
    - `volumeType` string: Volume type
    - `accelerator` object: GPU accelerator
      - `acceleratorTypeId` string: Accelerator type ID
      - `acceleratorType` string: GPU accelerator type
      - `accelerators` number: Quantity of GPU accelerators
      - `totalGpuMemoryGb` integer: Total GPU memory (GB)
    - `localDisks` object: Local SSD storage directly attached to the host. Data is ephemeral and will be lost when the VM is stopped or deleted.
      - `disks` integer: Number of local disks attached to the VM
      - `sizeTb` number: Size of a single disk in TB
      - `totalSizeTb` number: Total capacity (all disks combined), in TB
      - `type` string: Disk 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)
