Skip to main content
POST
Create Base Project

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
name
string
required

The project name.

buildingTypeId
integer
required

The building type the project is assessed as. Valid values come from buildingTypeEnum on the BuildingProject Enums endpoint.

yearOfConstruction
integer
required

The year construction starts.

yearOfCommissioning
integer
required

The year the building is commissioned.

projectStatusId
enum<integer> | null

The design stage the project is in: 0 Competition, 1 Design, 2 Detailed Design, 3 Construction, 4 Operation, 5 Archived, 6 On Hold. Optional — omit it to leave the stage unset. Note that 0 is a real status rather than "none".

Available options:
0,
1,
2,
3,
4,
5,
6
models
object[]

The disciplines the project is split into — one entry per model. Optional, and capped at 100 per project.

Names are trimmed and lower-cased before they are stored, and entries that normalise to the same name are folded into a single model, active if any of them was active.

Models created here are independent of Speckle: no stream is created or required. A model's commit, pull time, and referenced object stay empty until a stream is attached to it.

Maximum array length: 100

Response

The project was created.

id
string<uuid>

The new project's id.

activeRevisionId
string<uuid>

The project's initial revision, created together with the project. Carry this id through follow-up writes so they land on the right revision.