With this API, you can import floor plan data to Coohom.
Request Body
Name | Required | Type | Description |
---|---|---|---|
name | false | string | floor plan name |
communityName | false | string | community name |
city | false | string | city |
province | false | string | province |
height | false | double | floor plan height in meters, default is 2.8 |
rooms | false | list<Room> | room list |
walls | false | list<Wall> | wall list |
holes | false | list<Hole> | doors and windows list |
pillars | false | list<Pillar> | pillar list |
flues | false | list<Flue> | flue list |
beams | false | list<Beam> | beam list |
Room
Name | Required | Type | Description |
---|---|---|---|
name | false | string | room name |
roomTypeId | false | int | ID of the room type in Coohom system. enumeration. see below |
position | true | Point | any point in the room (Such as the center point, should not on the wall) |
Note: Rooms will be automatically constructed based on the given information of walls, pillars, doors and windows. Add room name to the room with the given room coordinates.
It is recommended to specify the room type ID, or this room will be treated as a "untitled" type in Coohom system.
Room information can be null.
enumeration for roomTypeId
roomTypeId | name |
---|---|
1 | living room |
2 | corridor |
3 | dining room |
4 | bedroom |
5 | children room |
6 | study |
7 | kitchen |
8 | bathroom |
9 | multifunctional room |
10 | second bedroom |
11 | guest bedroom |
12 | elderly room |
13 | balcony |
14 | entrance |
16 | entrance hall |
17 | custom |
18 | storage room |
19 | walk-in closet |
20 | outdoor |
21 | lounge |
22 | guest dining room |
23 | terrace |
Wall
Name | Required | Type | Description |
---|---|---|---|
start | true | Point | starting point of the wall |
end | true | Point | end point of the wall |
type | false | string | type of wall centerline, default is LINE. valid values are LINE, ARC, QUADRATIC_BEZIER_CURVE |
bulge | false | double | bulge of the arc of a curved wall |
control | false | Point | control point for the quadratic Bezier curve of a curved wall |
height | false | double | wall height in meters, default height: floor plan height |
thickness | false | double | wall thickness in meters , default thickness: 0.12m |
Note: It is treated as a line, if there is no type, or there is type without corresponding curve information.
All curves will be fitted as quadratic Bezier curves after import.
Hole
Name | Required | Type | Description |
---|---|---|---|
start | true | Point | start point |
end | true | Point | end point |
openSide | false | string | open direction, default is LEFT. valid values are LEFT, RIGHT |
height | true | double | height in meters |
groundClearance | true | double | height above floor in meters |
type | true | string | hole type. valid values are DOOR, DOUBLE_DOOR, SLIDE_DOOR, WINDOW, BAY_WINDOW, FRENCH_WINDOW |

Note: openSide is only valid for single doors, double doors and bay windows.
Pillar
Name | Required | Type | Description |
---|---|---|---|
polygon | true | list<Point> | outline of pillar |
Note: Pillars are the same height as the floor plan.
Flue
Name | Required | Type | Description |
---|---|---|---|
id | false | string | id for the flue |
polygon | true | list<Point> | outline of flue |
Beam
Name | Required | Type | Description |
---|---|---|---|
start | true | Point | start point |
end | true | Point | end point |
height | true | double | height in meters |
thickness | true | double | thickness in meters |
Point
Name | Required | Type | Description |
---|---|---|---|
x | true | double | X-axis offset in meters |
y | true | double | Y-axis offset in meters |
Note: The positive Y direction towards the top of the screen, and the floor plan faces north.

Response
If the import or update is successful, the code is 0, and the plan id is returned.
If the operation fails, an error code and error message will be returned.