Projects
A project owns a sandboxed Next.js app, its message history, and its file state.
List projects
httpGET /api/v1/projects
json{ "projects": [{ "id": "…", "name": "snug-comet", "createdAt": "…", "updatedAt": "…" }] }
Create a project
httpPOST /api/v1/projects
json{ "name": "my-app", // optional; auto-generated kebab-case if omitted "prompt": "Build me…", // optional; if present, kicks off an initial agent run "modelId": "claude-opus-4-7", // optional; defaults to Claude Opus 4.7 "images": [{ "url": "https://…", "mimeType": "image/png" }] // optional }
Response:
json{ "project": { "id": "…", "name": "my-app" }, "runId": "…" // present when prompt was provided }
Send a follow-up prompt
httpPOST /api/v1/projects/{id}/messages
json{ "prompt": "Add dark mode", "modelId": "claude-sonnet-4-6", "images": [] }
Response: { "messageId": "…", "runId": "…" }
List messages
httpGET /api/v1/projects/{id}/messages