Java SDK
Install (Maven)
<dependency> <groupId>ai.isorun</groupId> <artifactId>isorun-sdk</artifactId> <version>0.2.0</version></dependency>Authenticate
export ISORUN_API_KEY="isorun_live_<region>_<id>_<hmac>"export ISORUN_API_URL="https://api.isorun.ai" # optionalQuickstart
try (Sandbox sb = Sandbox.create("python")) { ExecResult result = sb.exec("python3 -c 'print(42)'"); System.out.println(result.stdout().trim());}Configure and create
var opts = SandboxOptions.builder() .image("python:3.12") .vcpus(2) .memMib(2048) .timeout(60) .sandboxTimeout(900) .build();
try (Sandbox sb = Sandbox.create(opts)) { System.out.println(sb.exec("python3 --version").stdout());}Streaming, snapshots, restore
var result = sb.execStream("python3 train.py", chunk -> { System.out.printf("[%s] %s", chunk.stream(), chunk.data());}, 600);
String snapshotId = sb.checkpoint();try (Sandbox restored = Sandbox.restore(snapshotId, SandboxOptions.builder().build())) { System.out.println(restored.run("cat /etc/os-release"));}Production checklist
- Use try-with-resources for cleanup.
- Set explicit command timeouts.
- Log sandbox IDs with request IDs.