Projects API

List, create, update, and delete projects.

List projects

GET /api/v1/projects

Returns all projects you have access to.

{
  "items": [
    { "id": "...", "slug": "my-game", "name": "My Game", "created_at": "..." },
    { "id": "...", "slug": "blog", "name": "Blog", "created_at": "..." }
  ]
}

Get one project

GET /api/v1/projects/{slug}

Create a project

POST /api/v1/projects
Content-Type: application/json

{
  "slug": "my-game",
  "name": "My Game",
  "description": "Optional"
}

slug must be URL-safe (lowercase letters, digits, hyphens). It cannot be changed after creation.

Update a project

PATCH /api/v1/projects/{slug}
Content-Type: application/json

{ "name": "New Name" }

slug cannot be patched. Create a new project and migrate if you need to rename.

Delete a project

DELETE /api/v1/projects/{slug}

Deletes the project and all its schemas, packages, records, and assets. This is irreversible.

Export

GET /api/v1/projects/{slug}/supermodel.json

Returns the full project as a SuperModel — all packages, schemas, and records in a single JSON document.

GET /api/v1/projects/{slug}/download

Returns a ZIP containing all packages.