Site Plan & CAD Handoff — Developer Docs
Read Site Plan Studio design data and export concept geometry for Civil 3D.
How do I read site-plan design data and export concept geometry?
All four endpoints require the siteplan:read scope. Every key and connector token carries the full scope set by default, so no separate grant step exists.
| Endpoint | What it does | Rate limit |
|---|---|---|
GET /v1/projects/{project_id}/site-plan | Latest compiled concept as a WGS84-only GeoJSON FeatureCollection, plus metrics and scenario | 60/min |
GET /v1/projects/{project_id}/design-criteria | Resolved zoning standards per district with per-field provenance | 60/min |
GET /v1/projects/{project_id}/yield-scenario | Settled yield scenarios per district plus snapshot summaries | 60/min |
POST /v1/projects/{project_id}/site-plan-exports | Renders the concept to LandXML, DXF, or GeoJSON and returns a signed download URL | 10/min |
Concept geometry: until a concept compiles in Site Plan Studio, the site-plan route returns has_concept: false with an empty feature collection. Features carry object_type, label, layer, status, editable, and measurements; projected coordinates are stripped, WGS84 only. measurements holds site numbers only - solver bookkeeping (planner strategy, fit ratios, discarded-geometry counters) is excluded, so nothing there should be read as an area or dimension on the ground.
Design criteria: absent values are never bare nulls. A field reads Not provided in ordinance only when the extraction corroborated the absence; otherwise it reads Not located in the indexed ordinance, which claims nothing about the law. user_provided_fields lists the values the user themselves confirmed. citations are readable references such as Tangipahoa Parish Code § 36-91; retrieval chunk identifiers are never returned as citations. stormwater_context splits into known and not_in_code, so a requirement the code is silent on is named rather than read as a zero.
Yield scenarios: values the user settled under one district are inherited into another district's partition when missing, with the borrowing stated per key in inherited.
CAD handoff: landxml is the native Civil 3D import format; dxf covers generic CAD. The response is artifact_id, filename, mime_type, download_url, and expires_at (15 minutes); geometry travels as a file, never inline. Send an Idempotency-Key header so a retried request replays the original artifact. With no compiled concept the endpoint returns 404 (no_site_plan_concept).