Floor plan — write
add_tables write
Section titled “add_tables ”Add tables to the restaurant’s floor plan — the fastest way to set up a dining room from chat. Use when an owner says ‘add 10 tables that seat 4’ or ‘we got 3 more two-tops’. Creates a ‘Main Floor’ plan automatically if none exists. Tables are numbered sequentially and laid out in a grid (you can rearrange them visually in the dashboard later). This is what makes table assignment + capacity work.
Required scope: floor-plan.write
| Parameter | Type | Required | Description |
|---|---|---|---|
brand |
string | no | Brand slug. Optional in JWT mode. |
count |
number | yes | How many tables to add. |
seats |
number | no | Seats per table (max party). Default 4. |
shape |
enum | no | Table shape for the visual plan. Default rectangle. |
plan |
string | no | Floor-plan name to add to (defaults to the first plan, or creates “Main Floor”). |
idempotencyKey |
string | no |
add_dining_area write
Section titled “add_dining_area ”Add a dining area / section (e.g. ‘Patio’, ‘Bar’, ‘Main Room’) to a floor plan. Use when an owner wants to group tables into areas guests can be seated in or request. Add tables first with add_tables, then move them into areas in the dashboard.
Required scope: floor-plan.write
| Parameter | Type | Required | Description |
|---|---|---|---|
brand |
string | no | Brand slug. Optional in JWT mode. |
name |
string | yes | Area name, e.g. “Patio”. |
tag |
string | no | Optional short tag/label. |
description |
string | no | |
plan |
string | no | Floor-plan name (defaults to the first plan / “Main Floor”). |
idempotencyKey |
string | no |
remove_table write
Section titled “remove_table ”Remove a table from the floor plan by its name (e.g. ‘12’) or id. Use when a table is retired. If the table is in a table-combination or has upcoming reservations, the save is blocked with an explanation (nothing is silently unassigned).
Required scope: floor-plan.write
| Parameter | Type | Required | Description |
|---|---|---|---|
brand |
string | no | Brand slug. Optional in JWT mode. |
table |
string | yes | Table name (e.g. “12”) or id. |
idempotencyKey |
string | no |
update_table write
Section titled “update_table ”Change properties of EXISTING table(s) — minimum/maximum party size, name, shape, or which dining area they’re in. Use when an owner says ‘make tables 1–4 seat a minimum of 2’, ‘table 12 now seats up to 8’, ‘rename table 5 to Bar 1’, or ‘move these tables into the Patio’. Pass the table name(s) or id(s) and only the fields to change. (To ADD new tables use add_tables; this edits ones that already exist.)
Required scope: floor-plan.write
| Parameter | Type | Required | Description |
|---|---|---|---|
brand |
string | no | Brand slug. Optional in JWT mode. |
tables |
array | yes | Existing table name(s) or id(s) to edit, e.g. [“1”,“2”,“3”,“4”]. |
minParty |
number | no | New minimum party size. |
maxParty |
number | no | New maximum party size (seats). |
rename |
string | no | New name — only valid when editing a SINGLE table. |
shape |
enum | no | New shape. |
area |
string | no | Move the table(s) into this dining area, by name (must already exist — see add_dining_area). |
idempotencyKey |
string | no |