> For the complete documentation index, see [llms.txt](https://docs.cedana.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cedana.ai/references/api/cloud-bursting.md).

# Cloud Bursting

Cedana API for cloud bursting

## GET /v2/instances

> List instances

```json
{"openapi":"3.1.0","info":{"title":"Cedana API","version":"0.0.0-staging"},"tags":[{"name":"Cloud Bursting","description":"Cedana API for cloud bursting"}],"paths":{"/v2/instances":{"get":{"tags":["Cloud Bursting"],"summary":"List instances","operationId":"list_instances","responses":{"200":{"description":"List of instances","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/InstanceInfo"}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}},"components":{"schemas":{"InstanceInfo":{"type":"object","required":["id","name","status","cloud_provider","region","instance_type"],"properties":{"cloud_provider":{"type":"string"},"created_at":{"type":["string","null"]},"id":{"type":"string"},"instance_type":{"type":"string"},"name":{"type":"string"},"region":{"type":"string"},"status":{"type":"string"}}},"ApiError":{"type":"object","description":"Standard error response for API endpoints","required":["message"],"properties":{"code":{"type":["string","null"],"description":"HTTP status code"},"details":{"description":"Optional additional error details"},"message":{"type":"string","description":"Error message describing what went wrong"}}}}}}
```

## POST /v2/instances

> Create instance

```json
{"openapi":"3.1.0","info":{"title":"Cedana API","version":"0.0.0-staging"},"tags":[{"name":"Cloud Bursting","description":"Cedana API for cloud bursting"}],"security":[{"Token":[]}],"components":{"securitySchemes":{"Token":{"type":"http","scheme":"bearer"}},"schemas":{"CreateInstanceRequest":{"type":"object","required":["cloud","region","shade_instance_type","shade_cloud","name"],"properties":{"alert":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/Alert"}]},"auto_delete":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/AutoDelete"}]},"cloud":{"type":"string"},"envs":{"type":["array","null"],"items":{"$ref":"#/components/schemas/EnvironmentVariable"}},"launch_configuration":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/LaunchConfiguration"}]},"name":{"type":"string"},"os":{"type":["string","null"]},"region":{"type":"string"},"shade_cloud":{"type":"boolean"},"shade_instance_type":{"type":"string"},"ssh_key_id":{"type":["string","null"]},"tags":{"type":["array","null"],"items":{"type":"string"}},"template_id":{"type":["string","null"]},"volume_ids":{"type":["array","null"],"items":{"type":"string"}},"volume_mount":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/VolumeMount"}]}}},"Alert":{"type":"object","properties":{"date_threshold":{"type":["string","null"]},"spend_threshold":{"type":["string","null"]}}},"AutoDelete":{"type":"object","properties":{"date_threshold":{"type":["string","null"]},"spend_threshold":{"type":["string","null"]}}},"EnvironmentVariable":{"type":"object","required":["name","value"],"properties":{"name":{"type":"string"},"value":{"type":"string"}}},"LaunchConfiguration":{"type":"object","required":["type"],"properties":{"docker_configuration":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/DockerConfiguration"}]},"script_configuration":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/ScriptConfiguration"}]},"type":{"type":"string"}}},"DockerConfiguration":{"type":"object","required":["image"],"properties":{"args":{"type":["string","null"]},"envs":{"type":["array","null"],"items":{"$ref":"#/components/schemas/EnvironmentVariable"}},"image":{"type":"string"},"port_mappings":{"type":["array","null"],"items":{"$ref":"#/components/schemas/PortMapping"}},"registry_credentials":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/RegistryCredentials"}]},"shared_memory_in_gb":{"type":["integer","null"],"format":"int32"},"volume_mounts":{"type":["array","null"],"items":{"$ref":"#/components/schemas/VolumeMapping"}}}},"PortMapping":{"type":"object","required":["host_port","container_port"],"properties":{"container_port":{"type":"integer","format":"int32"},"host_port":{"type":"integer","format":"int32"}}},"RegistryCredentials":{"type":"object","required":["username","password"],"properties":{"password":{"type":"string"},"username":{"type":"string"}}},"VolumeMapping":{"type":"object","required":["host_path","container_path"],"properties":{"container_path":{"type":"string"},"host_path":{"type":"string"}}},"ScriptConfiguration":{"type":"object","required":["base64_script"],"properties":{"base64_script":{"type":"string"}}},"VolumeMount":{"type":"object","properties":{"auto":{"type":["boolean","null"]}}},"CreateInstanceResponse":{"type":"object","required":["instance_id","status","cloud_provider","region","instance_type"],"properties":{"cloud_provider":{"type":"string"},"instance_id":{"type":"string"},"instance_type":{"type":"string"},"region":{"type":"string"},"status":{"type":"string"}}},"ApiError":{"type":"object","description":"Standard error response for API endpoints","required":["message"],"properties":{"code":{"type":["string","null"],"description":"HTTP status code"},"details":{"description":"Optional additional error details"},"message":{"type":"string","description":"Error message describing what went wrong"}}}}},"paths":{"/v2/instances":{"post":{"tags":["Cloud Bursting"],"summary":"Create instance","operationId":"create_instance","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInstanceRequest"}}},"required":true},"responses":{"200":{"description":"Instance created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInstanceResponse"}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## GET /v2/instances/bursting-status

> Get configuration status

```json
{"openapi":"3.1.0","info":{"title":"Cedana API","version":"0.0.0-staging"},"tags":[{"name":"Cloud Bursting","description":"Cedana API for cloud bursting"}],"paths":{"/v2/instances/bursting-status":{"get":{"tags":["Cloud Bursting"],"summary":"Get configuration status","operationId":"get_bursting_status","responses":{"200":{"description":"Bursting configuration status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BurstingStatus"}}}}}}}},"components":{"schemas":{"BurstingStatus":{"type":"object","required":["status","message","can_use_bursting"],"properties":{"can_use_bursting":{"type":"boolean"},"message":{"type":"string"},"status":{"$ref":"#/components/schemas/BurstingConfigStatus"}}},"BurstingConfigStatus":{"type":"string","enum":["not_configured","configured","invalid"]}}}}
```

## GET /v2/instances/types

> Get available instance types

```json
{"openapi":"3.1.0","info":{"title":"Cedana API","version":"0.0.0-staging"},"tags":[{"name":"Cloud Bursting","description":"Cedana API for cloud bursting"}],"paths":{"/v2/instances/types":{"get":{"tags":["Cloud Bursting"],"summary":"Get available instance types","operationId":"get_instance_types","parameters":[{"name":"num_gpus","in":"query","description":"Filter by number of GPUs","required":false,"schema":{"type":"integer","format":"int32"}},{"name":"gpu_type","in":"query","description":"Filter by GPU type","required":false,"schema":{"type":"string"}},{"name":"sort","in":"query","description":"Sort results (e.g., 'price')","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Available instance types","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/InstanceType"}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}},"components":{"schemas":{"InstanceType":{"type":"object","required":["cloud","shade_instance_type","cloud_instance_type","configuration","hourly_price","deployment_type","availability","boot_time"],"properties":{"availability":{"type":"array","items":{"$ref":"#/components/schemas/InstanceTypeAvailability"}},"boot_time":{"$ref":"#/components/schemas/InstanceTypeBootTime"},"cloud":{"type":"string"},"cloud_instance_type":{"type":"string"},"configuration":{"$ref":"#/components/schemas/InstanceTypeConfiguration"},"deployment_type":{"type":"string"},"hourly_price":{"type":"integer","format":"int32"},"shade_instance_type":{"type":"string"}}},"InstanceTypeAvailability":{"type":"object","required":["region","available","display_name"],"properties":{"available":{"type":"boolean"},"display_name":{"type":"string"},"region":{"type":"string"}}},"InstanceTypeBootTime":{"type":"object","required":["min_boot_in_sec","max_boot_in_sec"],"properties":{"max_boot_in_sec":{"type":"integer","format":"int32"},"min_boot_in_sec":{"type":"integer","format":"int32"}}},"InstanceTypeConfiguration":{"type":"object","required":["memory_in_gb","storage_in_gb","vcpus","num_gpus","gpu_type","interconnect","nvlink","vram_per_gpu_in_gb","os_options"],"properties":{"gpu_type":{"type":"string"},"interconnect":{"type":"string"},"memory_in_gb":{"type":"integer","format":"int32"},"num_gpus":{"type":"integer","format":"int32"},"nvlink":{"type":"boolean"},"os_options":{"type":"array","items":{"type":"string"}},"storage_in_gb":{"type":"integer","format":"int32"},"vcpus":{"type":"integer","format":"int32"},"vram_per_gpu_in_gb":{"type":"integer","format":"int32"}}},"ApiError":{"type":"object","description":"Standard error response for API endpoints","required":["message"],"properties":{"code":{"type":["string","null"],"description":"HTTP status code"},"details":{"description":"Optional additional error details"},"message":{"type":"string","description":"Error message describing what went wrong"}}}}}}
```

## DELETE /v2/instances/{instance\_id}

> Delete instance

```json
{"openapi":"3.1.0","info":{"title":"Cedana API","version":"0.0.0-staging"},"tags":[{"name":"Cloud Bursting","description":"Cedana API for cloud bursting"}],"security":[{"Token":[]}],"components":{"securitySchemes":{"Token":{"type":"http","scheme":"bearer"}},"schemas":{"ApiError":{"type":"object","description":"Standard error response for API endpoints","required":["message"],"properties":{"code":{"type":["string","null"],"description":"HTTP status code"},"details":{"description":"Optional additional error details"},"message":{"type":"string","description":"Error message describing what went wrong"}}}}},"paths":{"/v2/instances/{instance_id}":{"delete":{"tags":["Cloud Bursting"],"summary":"Delete instance","operationId":"delete_instance","parameters":[{"name":"instance_id","in":"path","description":"Instance ID to delete","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Instance deleted successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Failed to delete instance","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```

## GET /v2/instances/{instance\_id}/status

> Get instance status

```json
{"openapi":"3.1.0","info":{"title":"Cedana API","version":"0.0.0-staging"},"tags":[{"name":"Cloud Bursting","description":"Cedana API for cloud bursting"}],"security":[{"Token":[]}],"components":{"securitySchemes":{"Token":{"type":"http","scheme":"bearer"}},"schemas":{"InstanceStatus":{"type":"object","required":["instance_id","status","metadata"],"properties":{"created_at":{"type":["string","null"]},"instance_id":{"type":"string"},"ip_address":{"type":["string","null"]},"metadata":{},"ssh_port":{"type":["integer","null"],"format":"int32"},"ssh_user":{"type":["string","null"]},"status":{"type":"string"}}},"ApiError":{"type":"object","description":"Standard error response for API endpoints","required":["message"],"properties":{"code":{"type":["string","null"],"description":"HTTP status code"},"details":{"description":"Optional additional error details"},"message":{"type":"string","description":"Error message describing what went wrong"}}}}},"paths":{"/v2/instances/{instance_id}/status":{"get":{"tags":["Cloud Bursting"],"summary":"Get instance status","operationId":"get_instance_status","parameters":[{"name":"instance_id","in":"path","description":"Instance ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Instance status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InstanceStatus"}}}},"404":{"description":"Instance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"500":{"description":"Failed to get status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}}}
```
