Endpoints
An overview of the REST API by resource. The complete, authoritative surface — request/response schemas included — is the OpenAPI specification.
Projects
Section titled “Projects”List projects
Section titled “List projects”GET /api/projects
Create project
Section titled “Create project”POST /api/projects
Get project
Section titled “Get project”GET /api/projects/{namespace}/{slug}
Import from GitHub
Section titled “Import from GitHub”POST /api/projects/{namespace}/{slug}/import
Delete project
Section titled “Delete project”DELETE /api/projects/{namespace}/{slug}
Permanently deletes a project and all associated data (repo + workspace forks, changes, issues, events, metrics, webhooks). Owner-only. The request body must confirm the exact path:
{ "confirm": "@namespace/slug" }Returns 202 Accepted with { "status": "deleting", "jobId": "del_…" } — the
cascade runs asynchronously and is idempotent/resumable. A mismatched confirm
returns 400; a non-owner returns 404.
Workspaces
Section titled “Workspaces”List workspaces
Section titled “List workspaces”GET /api/projects/{namespace}/{slug}/workspaces
Create workspace
Section titled “Create workspace”POST /api/projects/{namespace}/{slug}/workspaces
Commit changes
Section titled “Commit changes”POST /api/workspaces/{name}/commit
Changes
Section titled “Changes”List changes
Section titled “List changes”GET /api/projects/{name}/changes
Create change
Section titled “Create change”POST /api/projects/{name}/changes
Merge change
Section titled “Merge change”POST /api/changes/{id}/merge
Agents
Section titled “Agents”List agents
Section titled “List agents”GET /api/agents
Create agent
Section titled “Create agent”POST /api/agents
Get agent
Section titled “Get agent”GET /api/agents/{id}
Get current user
Section titled “Get current user”GET /api/users
Returns the authenticated user’s profile.
Delete account
Section titled “Delete account”DELETE /api/users/me
GDPR-grade account erasure. Deletes the caller’s account and all owned
projects, revokes all tokens/sessions (and the user’s agents), and anonymizes
the user’s contributions to other people’s projects (author set to a
deleted-user tombstone — the contribution stays, the identity is removed).
Requires confirmation with the caller’s own username:
{ "confirm": "<your-username>" }Setting deletion immediately invalidates the caller’s credentials (subsequent
requests return 401). Returns 202 Accepted with
{ "status": "deleting", "jobId": "del_…" }; the cascade runs asynchronously and
always completes (org sole-ownership is auto-resolved, never blocking erasure). A
mismatched confirm returns 400.
Organizations
Section titled “Organizations”List organizations
Section titled “List organizations”GET /api/orgs
Create organization
Section titled “Create organization”POST /api/orgs