v3

OpenAPI 3.1.02026-08-06274467602.9 KB
project

Create Sandbox Project From Features

Create one sandbox project from several confirmed features (Door 1).

The multi-feature twin of /sandbox/from-feature: derives one shared county from every feature's marker before inserting the project, then enqueues a single seed for all of them. Unknown feature_id → 404; a NULL/malformed marker → 422; features spanning more than one county → 422 (a project is scoped to one county under RLS, so the paste must be split). status flips to ready and the layers arrive via SSE.

features is the paste flow. upload is the file-import flow, whose row values come from the server's held inspect result rather than this request.

post/api/v1/project/sandbox/from-features

Request body

spine'matched_only' | 'all_rows'

Response

Successful Response

project_idstring uuid required
status'pending' | 'ready' | 'failed' | 'archived' required

Lifecycle status for a project.

Replaces the boolean is_created whose name implied "was created" (always True once inserted) but semantically meant "is ready for the dashboard to show." Promoting to an enum lets new states (FAILED, ARCHIVED) join without contorting the boolean.

  • PENDING: row inserted, sandbox resources not yet materialized
  • READY: resources in place; visible on dashboard
  • FAILED: build raised mid-flight (sandbox saga rollback uses hard-delete instead, so this state is reserved for future async build paths that can't roll back atomically)
  • ARCHIVED: user-archived; hidden by default
county_fipsstring required