Skip to main content

TypeScript

npm install dedalus
import Dedalus from 'dedalus';

const client = new Dedalus();

const workspace = await client.workspaces.create({
  vcpu: 1,
  memory_mib: 2048,
  storage_gib: 10,
});

console.log(workspace.workspace_id);
Auto-pagination is built in:
for await (const ws of client.workspaces.list()) {
  console.log(ws.workspace_id, ws.lifecycle_status);
}

Python

pip install dedalus-sdk
from dedalus_sdk import Dedalus

client = Dedalus()

workspace = client.workspaces.create(
    vcpu=1,
    memory_mib=2048,
    storage_gib=10,
)

print(workspace.workspace_id)
Async is supported:
from dedalus_sdk import AsyncDedalus

client = AsyncDedalus()
workspace = await client.workspaces.create(vcpu=1, memory_mib=2048, storage_gib=10)

Go

go get github.com/dedalus-labs/dedalus-go
package main

import (
    "context"
    "fmt"

    "github.com/dedalus-labs/dedalus-go"
)

func main() {
    client := dedalus.NewClient()

    workspace, _ := client.Workspaces.New(context.TODO(), dedalus.WorkspaceNewParams{
        VCPU:       dedalus.Int(1),
        MemoryMiB:  dedalus.Int(2048),
        StorageGiB: dedalus.Int(10),
    })

    fmt.Println(workspace.WorkspaceID)
}

Resources

Each SDK exposes the same resource hierarchy:
ResourceDescription
workspacesCreate, list, update, delete workspaces
workspaces.sshSSH session management
workspaces.executionsRun commands and scripts
workspaces.terminalsInteractive terminal sessions
workspaces.artifactsFile upload/download
workspaces.previewsWeb preview URLs
Last modified on March 18, 2026