---
title: "/clusters"
method: GET
path: "/clusters"
---

# /clusters

`GET /clusters`

Get all non deleted clusters.

## Response `200`

Returns a ClustersResponse object.

- ClustersResponse
  - `clusters` Cluster[], required
    - `id` string, uuid, required — The unique identifier for the cluster.
    - `cloud` string, required — The cloud provider for the cluster.
    - `name` string, required — The name of the cluster.
    - `cloud_cluster_id` string, nullable — The cloud provider assigned cluster ID.
    - `region_info` ClusterRegionInfo, required
      - `region` string, required — The region code.
      - `display_name` string, required — Human-readable display name for the region.
    - `status` string, required — The current status of the cluster.
    - `status_details` string, nullable — Additional details about the cluster status.
    - `created_at` string, date-time, required — The timestamp when the cluster was created.
    - `updated_at` string, date-time, required — The timestamp when the cluster was last updated.
    - `instances` Instance[], required — Array of instances in the cluster.
      - `id` string, uuid, required — The unique identifier for the instance. Used in the instances for the /instances/{id}/info and /instances/{id}/delete APIs.
      - `cloud` string, required — Specifies the underlying cloud provider. See this [explanation](/getting-started/concepts#cloud-cloud-provider) for more details.
      - `region` string, required — Specifies the region.
      - `shade_instance_type` string, required — The Shadeform standardized instance type. See this [explanation](/getting-started/concepts#shade-instance-type-and-cloud-instance-type) for more details.
      - `cloud_instance_type` string, required — The instance type for the underlying cloud provider. See this [explanation](/getting-started/concepts#shade-instance-type-and-cloud-instance-type) for more details.
      - `cloud_assigned_id` string, required — The unique identifier of the instance issued by the underlying cloud provider.
      - `shade_cloud` boolean, required — Specifies if the instance is launched in [Shade Cloud](/getting-started/concepts#shade-cloud) or in a linked cloud account.
      - `name` string, required — The name of the instance
      - `configuration` object, required
        - `memory_in_gb` integer, required — The amount of memory for the instance in gigabytes. Note that this is not VRAM which is determined by GPU type and the number of GPUs.
        - `storage_in_gb` integer, required — The amount of storage for the instance. If this storage is too low for the instance type, please email support@shadeform.ai as the storage may be adjustable.
        - `vcpus` integer, required — The number of vCPUs for the instance.
        - `num_gpus` integer, required — The number of GPUs for the instance.
        - `gpu_type` string, required — The type of GPU for the instance.
        - `interconnect` string, required — The type of GPU interconnect.
        - `nvlink` boolean — If the instance has NVLink
        - `vram_per_gpu_in_gb` integer, required — The video memory per GPU for the instance in gigabytes.
        - `gpu_manufacturer` string, required — The manufacturer of the gpu
        - `os` string, required — The operating system of the instance.
      - `ip` string, required — The public IP address of the instance. In select cases, it may also be the DNS.
      - `ssh_user` string, required — The SSH user used to SSH into the instance.
      - `ssh_port` integer, required — The SSH port of the instance. In most cases, this will be port 22 but for some clouds, this may be a different port.
      - `status` 'creating' | 'pending_provider' | 'pending' | 'active' | 'error' | 'deleting' | 'deleted', required — The status of the instance.
      - `status_details` string — Additional context for the status
      - `cost_estimate` string, required — The cost incurred by the instance. This only the cost via Shadeform. If the instance is deployed in your own cloud account, then all billing is through your cloud provider.
      - `hourly_price` integer — The hourly price of the instance in cents.
      - `launch_configuration` LaunchConfiguration — Defines automatic actions after the instance becomes active.
        - `type` 'docker' | 'script', required — Specifies the type of launch configuration. See [Launch Configuration](/getting-started/concepts#launch-configuration) for more details.
        - `docker_configuration` DockerConfiguration — May only be used if launch_configuration.type is 'docker'. Use docker_configuration to automatically pull and run a docker image. See this [tutorial](/guides/dockercontainers) for examples.
          - `image` string, required — Specifies the docker image to be pulled and run on the instance at startup.
          - `args` string — Specifies the container arguments passed into the image at runtime.
          - `shared_memory_in_gb` integer — Describes the amount of shared memory allocated for the container. Equivalent to using the --shm-size flag in the docker cli. If shared_memory_in_gb is not specified, then the container will use the host namespace which is the equivalent of --ipc=host.
          - `envs` Env[] — List of environment variable name-value pairs that will be passed to the docker container.
            - `name` string, required — Name of the environment variable
            - `value` string, required — Value of the environment variable
          - `port_mappings` PortMappings[] — List of port mappings between the host instance and the docker container. Equivalent of -p flag for docker run command.
            - `host_port` integer, required — Port of the host.
            - `container_port` integer, required — Port of the container.
          - `volume_mounts` VolumeMounts[] — List of volume mounts between the host instance and the docker container. Equivalent of -v flag for docker run command.
            - `host_path` string, required — Filepath of the host.
            - `container_path` string, required — Filepath of the container.
          - `registry_credentials` RegistryCredentials
            - `username` string — The username for the docker registry.
            - `password` string — The password for the docker registry.
        - `script_configuration` ScriptConfiguration — May only be used if launch_configuration.type is 'script'. Configures a startup script to be run automatically after the instance is active. See this [tutorial]/guides/startupscript) for examples.
          - `base64_script` string, required — A startup script that is base64 encoded.
      - `tags` Tag[] — Add custom, searchable tags to instances.
      - `port_mappings` InstancePortMappings[] — List of port mappings on an instance that a Cloud Provider might have automatically set up.
        - `internal_port` integer
        - `external_port` integer
      - `active_at` string, date-time — The timestamp of when the instance was active in UTC.
      - `created_at` string, date-time, required — The timestamp of when the instance was created in UTC.
      - `deleted_at` string, date-time, required — The timestamp of when the instance was deleted in UTC.
      - `boot_time` BootTime
        - `min_boot_in_sec` integer — boot time minimum estimate
        - `max_boot_in_sec` integer — boot time maximum estimate
    - `hourly_price` integer, required — The hourly price of the cluster in cents.
    - `cost_estimate` string, nullable — Estimated cost of the cluster.
    - `active_at` string, date-time, nullable — The timestamp when the cluster became active.

---

[API](https://skmtc.net/shadeform/apis/shadeform-api.md) · [All operations](https://skmtc.net/shadeform/apis/shadeform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shadeform/shadeform-api/versions/e1750dca8851/schema)
