Sita Docs
  1. Overview
  2. System
  3. API
  4. Geometry & Viewer

API

Geometry & Viewer API

Implemented

The browser needs element trees, source URLs and graph fragments without downloading Neo4j. Geometry operations stay off the request path except for on-demand cross-section.

Framework03

Why this exists

Why this API boundary exists

The browser needs element trees, source URLs and graph fragments without downloading Neo4j. Geometry operations stay off the request path except for on-demand cross-section.

Endpoints

GET/viewer/models/{file_id}/rootImplemented

Neo4j root element summary.

Auth: clerk

Framework03

services/api/app/routes/viewer.py

GET/viewer/models/{file_id}/childrenImplemented

Child elements of a parent.

Auth: clerk

services/api/app/routes/viewer.py

GET/viewer/models/{file_id}/elements/by-express/{express_id}Implemented

Element by IFC express id.

Auth: clerk

services/api/app/routes/viewer.py

GET/viewer/elementsImplemented

Query elements with filters.

Auth: clerk

services/api/app/routes/viewer.py

GET/viewer/elements/classifyPartial

Classify an element from properties.

Auth: clerk

services/api/app/routes/viewer.py

PATCH/viewer/elements/metadataImplemented

Update element metadata in Neo4j.

Auth: clerk

services/api/app/routes/viewer.py

POST/viewer/elements/suggestPartial

Material suggestion from element properties.

Auth: clerk

services/api/app/routes/viewer.py

GET/viewer/models/{file_id}/source-urlImplemented

Presigned source model URL.

Auth: clerk

services/api/app/routes/viewer.py

GET/viewer/models/{file_id}/artifactsImplemented

Derived artefacts (meshes, GLB).

Auth: clerk

services/api/app/routes/viewer.py

GET/viewer/models/{file_id}/graph-relationsImplemented

Graph relations for the viewer.

Auth: clerk

services/api/app/routes/viewer.py

GET/viewer/models/{file_id}/graph-viewImplemented

Paginated graph view.

Auth: clerk

services/api/app/routes/viewer.py

GET/viewer/models/{file_id}/graph-checkImplemented

Graph integrity / coverage check.

Auth: clerk

services/api/app/routes/viewer.py

GET/structural/models/{file_id}/elements/{element_id}/cross-sectionImplemented

Cross-section profile for the viewer. Not catalogue matching.

Auth: clerk

Framework03

services/api/app/routes/structural.py