Skip to main content

Floor Plans

Managing restaurant floor plans and table layouts via the API.

Overview

Floor plans define your restaurant's physical layout, including:

  • Table positions and capacities
  • Room/section organization
  • Visual layout elements
  • Table availability rules

List Floor Plans

Request

GET /external/floorplans

Example

curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.molzait.com/external/floorplans

Response

[
{
"id": "0a7b0c44eff3-4350-8d4f-eeaee83aa441",
"name": "Main Dining Room",
"restaurantId": "e54ba2b9e5f1-4568-a5e0-5998573e002a",
"sortIndex": 0,
"tables": {
"2f72e7aec901-4427-9ffd-bc4fc435c431": {
"id": "2f72e7aec901-4427-9ffd-bc4fc435c431",
"name": "45",
"minPartySize": 2,
"maxPartySize": 4,
"x": 100,
"y": 250,
"rotation": 90,
"type": "rect_four",
"reservable": true,
"priorityIndex": 0,
"tableCategoryIds": ["9719e96604bb-40f4-b47e-66e7542c8096"]
}
},
"combinations": {},
"elements": {}
}
]

Create Floor Plan

Request

POST /external/floorplans

Example

curl -X POST \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Outdoor Terrace",
"sortIndex": 1,
"tables": {},
"combinations": {},
"elements": {}
}' \
https://api.molzait.com/external/floorplans

Update Floor Plan

Request

PUT /external/floorplans/{floorPlanId}

Example - Update Floor Plan

curl -X PUT \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Updated Terrace",
"sortIndex": 1,
"tables": {},
"combinations": {},
"elements": {}
}' \
https://api.molzait.com/external/floorplans/0a7b0c44eff3-4350-8d4f-eeaee83aa441

Delete Floor Plan

Request

DELETE /external/floorplans/{floorPlanId}

Example

curl -X DELETE \
-H "Authorization: Bearer YOUR_API_KEY" \
https://api.molzait.com/external/floorplans/0a7b0c44eff3-4350-8d4f-eeaee83aa441

Table Properties

Tables in floor plans are stored as a map with table IDs as keys:

Required Fields

  • id: Unique table identifier
  • name: Table display name (e.g., "45", "Booth A")
  • minPartySize: Minimum party size
  • maxPartySize: Maximum party size
  • x, y: Position coordinates
  • rotation: Rotation angle in degrees
  • type: Table shape type (e.g., rect_four, round_six)
  • reservable: Whether table can be reserved
  • priorityIndex: Seating preference priority
  • tableCategoryIds: Array of category IDs

Table Types

Available table types:

  • Rectangle: rect_one, rect_two, rect_three, rect_three_slim, rect_four, rect_four_long, rect_five, rect_six, rect_eight, rect_ten
  • Square: square_eight
  • Round: round_one, round_two, round_three, round_four, round_six, round_eight, round_ten

Next Steps